diff --git a/app/jobs/send_submitter_verification_email_job.rb b/app/jobs/send_submitter_verification_email_job.rb index 542d4ae7..a8dec1e4 100644 --- a/app/jobs/send_submitter_verification_email_job.rb +++ b/app/jobs/send_submitter_verification_email_job.rb @@ -6,7 +6,9 @@ class SendSubmitterVerificationEmailJob def perform(params = {}) submitter = Submitter.find(params['submitter_id']) - SubmitterMailer.otp_verification_email(submitter).deliver_now! + locale = params['locale'].presence || submitter.account.locale + + SubmitterMailer.otp_verification_email(submitter, locale:).deliver_now! SubmissionEvent.create!(submitter_id: params['submitter_id'], event_type: 'send_2fa_email', diff --git a/app/mailers/submitter_mailer.rb b/app/mailers/submitter_mailer.rb index a6db0770..18d2f570 100644 --- a/app/mailers/submitter_mailer.rb +++ b/app/mailers/submitter_mailer.rb @@ -144,13 +144,13 @@ class SubmitterMailer < ApplicationMailer end end - def otp_verification_email(submitter) + def otp_verification_email(submitter, locale: nil) @submitter = submitter @otp_code = EmailVerificationCodes.generate([submitter.email.downcase.strip, submitter.slug].join(':')) assign_message_metadata('otp_verification_email', submitter) - I18n.with_locale(submitter.account.locale) do + I18n.with_locale(locale || submitter.account.locale) do mail(to: submitter.email, subject: I18n.t('email_verification')) end end