From 1ceb2abf3493f7f5081d24597a55fa61f6f8b7af Mon Sep 17 00:00:00 2001 From: chiu Date: Mon, 8 Dec 2025 08:21:17 +0000 Subject: [PATCH] Fixed the issue of administrators receiving extra garbled emails. --- app/controllers/asks_controller.rb | 82 +++++++++++------------------- 1 file changed, 31 insertions(+), 51 deletions(-) diff --git a/app/controllers/asks_controller.rb b/app/controllers/asks_controller.rb index 5a55b11..f9bfe77 100644 --- a/app/controllers/asks_controller.rb +++ b/app/controllers/asks_controller.rb @@ -545,13 +545,15 @@ class AsksController < ApplicationController else referer_link = nil end - mail_subject = mail_from+": #{t('ask.email_verification_notification')}" + mail_subject = mail_from+": #{t('ask.email_verification_notification')}" + + email_er.email.update_attributes( :mail_lang=> site.default_locale, :create_user=>(current_user rescue nil), :mail_sentdate=>mail_sentdate, :module_app=>@module_app, - :mail_to=>group_mail, + :mail_to=>group_mail, :mail_subject=>mail_subject, :template=>'asks/email_verification', :template_data=>{ @@ -560,11 +562,11 @@ class AsksController < ApplicationController "referer_link" => referer_link, "site_host" => host_url }, - :mail_reply_to => (manager_emails.empty? ? nil : manager_emails) + :mail_reply_to => nil ) - # email_er.email.deliver + email_er.email.deliver end - + def build_email(email_er) email = Email.new email.save @@ -581,7 +583,26 @@ class AsksController < ApplicationController if host_url == "http://" host_url = request.protocol + request.host_with_port end - mail_subject = mail_from + " : " + email_er.category.title + mail_subject = mail_from + " : " + email_er.category.title + + template_data = { + "title" => email_er.title, + "name" => email_er.name, + "identity" => email_er[:identity], + "mail" => email_er.mail, + "phone" => email_er.phone, + "serial_number" => email_er.get_serial_number, + "appointment" => email_er.appointment, + "disp_fields_infos" => @disp_fields_infos, + "ask_question_id" => email_er.id.to_s, + "site_host" => host_url, + "usage_rule" => @usage_rule + } + + unless manager_emails.empty? + template_data["bcc_recipients"] = manager_emails.join(',') + end + email_er.email.update_attributes( :mail_lang=> site.default_locale, :create_user=>(current_user rescue nil), @@ -590,53 +611,12 @@ class AsksController < ApplicationController :mail_to=>group_mail, :mail_subject=>mail_subject, :template=>'asks/email', - :template_data=>{ - "title" => email_er.title, - "name" => email_er.name, - "identity" => email_er[:identity], - "mail" => email_er.mail, - "phone" => email_er.phone, - "serial_number" => email_er.get_serial_number, - # "fax" => email_er.fax, - # "content" => email_er.content - "appointment" => email_er.appointment, - "disp_fields_infos" => @disp_fields_infos, - "ask_question_id" => email_er.id.to_s, - "site_host" => host_url, - "usage_rule" => @usage_rule - }, - :mail_reply_to => (manager_emails.empty? ? nil : manager_emails) + :template_data=>template_data, + :mail_reply_to => (manager_emails.empty? ? nil : manager_emails) ) - if !manager_emails.empty? - Email.new( - :mail_lang=> site.default_locale, - :create_user=>(current_user rescue nil), - :mail_sentdate=>mail_sentdate, - :module_app=>@module_app, - :mail_to=>manager_emails, - :mail_subject=>mail_subject+" #{group_mail}", - :template=>'asks/email', - :template_data=>{ - # "title" => email_er.title, - "name" => email_er.name, - "identity" => email_er[:identity], - "mail" => email_er.mail, - "phone" => email_er.phone, - "serial_number" => email_er.get_serial_number, - # "fax" => email_er.fax, - # "content" => email_er.content - "appointment" => email_er.appointment, - "disp_fields_infos" => @disp_fields_infos, - "ask_question_id" => email_er.id.to_s, - "site_host" => host_url, - "usage_rule" => @usage_rule, - "edit_url" => "#{host_url}/#{site.default_locale}/admin/asks/#{email_er.id}/edit" - } - ).save - end - # email_er.email.deliver + + email_er.email.deliver end - def get_history question = AskQuestion.where(:serial_number => params["ticket_id"].to_i, :mail => params["email"]).first if !question.nil?