From 41f61d66a16abfe43a856dc1ba31fbd5f5d2a022 Mon Sep 17 00:00:00 2001 From: Tatsuto Maetsu Date: Thu, 15 Dec 2016 14:13:26 +0900 Subject: [PATCH 1/2] Add reply-to on config for Mailer --- src/Illuminate/Mail/MailServiceProvider.php | 6 +++++ src/Illuminate/Mail/Mailer.php | 26 +++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/src/Illuminate/Mail/MailServiceProvider.php b/src/Illuminate/Mail/MailServiceProvider.php index 008f0ebd2bf0..12434e74458a 100755 --- a/src/Illuminate/Mail/MailServiceProvider.php +++ b/src/Illuminate/Mail/MailServiceProvider.php @@ -47,6 +47,12 @@ public function register() if (is_array($to) && isset($to['address'])) { $mailer->alwaysTo($to['address'], $to['name']); } + + $replyTo = $app['config']['mail.reply-to']; + + if (is_array($replyTo) && isset($replyTo['address'])) { + $mailer->alwaysReplyTo($replyTo['address'], $replyTo['name']); + } return $mailer; }); diff --git a/src/Illuminate/Mail/Mailer.php b/src/Illuminate/Mail/Mailer.php index 21aee17c0187..0b87e45b9d69 100755 --- a/src/Illuminate/Mail/Mailer.php +++ b/src/Illuminate/Mail/Mailer.php @@ -51,6 +51,13 @@ class Mailer implements MailerContract, MailQueueContract * @var array */ protected $to; + + /** + * The global reply-to address and name. + * + * @var array + */ + protected $replyTo; /** * The IoC container instance. @@ -111,6 +118,18 @@ public function alwaysTo($address, $name = null) { $this->to = compact('address', 'name'); } + + /** + * Set the global reply-to address and name. + * + * @param string $address + * @param string|null $name + * @return void + */ + public function alwaysReplyTo($address, $name = null) + { + $this->replyTo = compact('address', 'name'); + } /** * Begin the process of mailing a mailable class instance. @@ -416,6 +435,13 @@ protected function createMessage() if (! empty($this->from['address'])) { $message->from($this->from['address'], $this->from['name']); } + + // If a global reply-to address has been specified we will set it on every message + // instances so the developer does not have to repeat themselves every time + // they create a new message. We will just go ahead and push the address. + if (! empty($this->replyTo['address'])) { + $message->replyTo($this->replyTo['address'], $this->replyTo['name']); + } return $message; } From c549d3e28c8cefa5756476ca82e24a1192ac8be0 Mon Sep 17 00:00:00 2001 From: Tatsuto Maetsu Date: Thu, 15 Dec 2016 14:19:54 +0900 Subject: [PATCH 2/2] Add reply-to on config for Mailer --- src/Illuminate/Mail/MailServiceProvider.php | 2 +- src/Illuminate/Mail/Mailer.php | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Illuminate/Mail/MailServiceProvider.php b/src/Illuminate/Mail/MailServiceProvider.php index 12434e74458a..004f0f2117af 100755 --- a/src/Illuminate/Mail/MailServiceProvider.php +++ b/src/Illuminate/Mail/MailServiceProvider.php @@ -47,7 +47,7 @@ public function register() if (is_array($to) && isset($to['address'])) { $mailer->alwaysTo($to['address'], $to['name']); } - + $replyTo = $app['config']['mail.reply-to']; if (is_array($replyTo) && isset($replyTo['address'])) { diff --git a/src/Illuminate/Mail/Mailer.php b/src/Illuminate/Mail/Mailer.php index 0b87e45b9d69..194ad4c1e4f3 100755 --- a/src/Illuminate/Mail/Mailer.php +++ b/src/Illuminate/Mail/Mailer.php @@ -51,7 +51,7 @@ class Mailer implements MailerContract, MailQueueContract * @var array */ protected $to; - + /** * The global reply-to address and name. * @@ -118,7 +118,7 @@ public function alwaysTo($address, $name = null) { $this->to = compact('address', 'name'); } - + /** * Set the global reply-to address and name. * @@ -435,7 +435,7 @@ protected function createMessage() if (! empty($this->from['address'])) { $message->from($this->from['address'], $this->from['name']); } - + // If a global reply-to address has been specified we will set it on every message // instances so the developer does not have to repeat themselves every time // they create a new message. We will just go ahead and push the address.