diff --git a/modules/advanced_mailer/advanced_mailer.admin.controller.php b/modules/advanced_mailer/advanced_mailer.admin.controller.php index ef6fea4f4..397a3da87 100644 --- a/modules/advanced_mailer/advanced_mailer.admin.controller.php +++ b/modules/advanced_mailer/advanced_mailer.admin.controller.php @@ -229,6 +229,11 @@ class Advanced_MailerAdminController extends Advanced_Mailer $recipient_name = $recipient_config->recipient_name; $recipient_email = $recipient_config->recipient_email; + if (!config('mail.default_from')) + { + $this->add('test_result', 'Error: ' . Context::getLang('msg_advanced_mailer_default_from_email_not_set')); + return; + } if (!$recipient_name) { $this->add('test_result', 'Error: ' . Context::getLang('msg_advanced_mailer_recipient_name_is_empty')); diff --git a/modules/advanced_mailer/advanced_mailer.controller.php b/modules/advanced_mailer/advanced_mailer.controller.php index 6140760c0..904822dcd 100644 --- a/modules/advanced_mailer/advanced_mailer.controller.php +++ b/modules/advanced_mailer/advanced_mailer.controller.php @@ -32,7 +32,10 @@ class Advanced_MailerController extends Advanced_Mailer if (!$mail->getFrom()) { list($default_from, $default_name) = $this->getDefaultEmailIdentity(); - $mail->setFrom($default_from, $default_name); + if ($default_from) + { + $mail->setFrom($default_from, $default_name); + } $default_reply_to = config('mail.default_reply_to'); if ($default_reply_to && !$mail->message->getReplyTo()) { @@ -51,10 +54,13 @@ class Advanced_MailerController extends Advanced_Mailer $original_sender_email = $sender ? array_first_key($sender) : null; $original_sender_name = $sender ? array_first($sender) : null; list($default_from, $default_name) = $this->getDefaultEmailIdentity(); - if ($original_sender_email !== $default_from) + if ($original_sender_email !== $default_from && $default_from) { $mail->setFrom($default_from, $original_sender_name ?: $default_name); - $mail->setReplyTo($original_sender_email); + if ($original_sender_email) + { + $mail->setReplyTo($original_sender_email); + } } } } @@ -132,7 +138,7 @@ class Advanced_MailerController extends Advanced_Mailer if (!$email) { $member_config = getModel('module')->getModuleConfig('member'); - $email = $member_config->webmaster_email; + $email = strval($member_config->webmaster_email); $name = $member_config->webmaster_name ?: 'webmaster'; } diff --git a/modules/advanced_mailer/lang/en.php b/modules/advanced_mailer/lang/en.php index f4f4be412..ad0c195b1 100644 --- a/modules/advanced_mailer/lang/en.php +++ b/modules/advanced_mailer/lang/en.php @@ -107,6 +107,7 @@ $lang->msg_advanced_mailer_sender_name_is_empty = 'Please enter the sender\'s na $lang->msg_advanced_mailer_sender_email_is_empty = 'Please enter the sender\'s email address.'; $lang->msg_advanced_mailer_sender_email_is_invalid = 'The sender\'s email address is invalid.'; $lang->msg_advanced_mailer_reply_to_is_invalid = 'The Reply-To email address is invalid.'; +$lang->msg_advanced_mailer_default_from_email_not_set = 'The default sender email address is not configured.'; $lang->msg_advanced_mailer_recipient_name_is_empty = 'Please enter the recipient\'s name.'; $lang->msg_advanced_mailer_recipient_email_is_empty = 'Please enter the recipient\'s email address.'; $lang->msg_advanced_mailer_recipient_email_is_invalid = 'The recipient\'s email address is invalid.'; diff --git a/modules/advanced_mailer/lang/ko.php b/modules/advanced_mailer/lang/ko.php index 3dd173fcd..a177fc86d 100644 --- a/modules/advanced_mailer/lang/ko.php +++ b/modules/advanced_mailer/lang/ko.php @@ -107,6 +107,7 @@ $lang->msg_advanced_mailer_sender_name_is_empty = '보낸이 이름을 입력해 $lang->msg_advanced_mailer_sender_email_is_empty = '보낸이 메일 주소를 입력해 주십시오.'; $lang->msg_advanced_mailer_sender_email_is_invalid = '보낸이 메일 주소가 올바른 메일 주소가 아닙니다.'; $lang->msg_advanced_mailer_reply_to_is_invalid = 'Reply-To 메일 주소가 올바른 메일 주소가 아닙니다.'; +$lang->msg_advanced_mailer_default_from_email_not_set = '기본 발신자 이름과 주소가 설정되어 있지 않습니다.'; $lang->msg_advanced_mailer_recipient_name_is_empty = '받는이 이름을 입력해 주십시오.'; $lang->msg_advanced_mailer_recipient_email_is_empty = '받는이 메일 주소를 입력해 주십시오.'; $lang->msg_advanced_mailer_recipient_email_is_invalid = '받는이 메일 주소가 올바른 메일 주소가 아닙니다.';