From dcf3d407096051586b53b2ff5580190bea1e6888 Mon Sep 17 00:00:00 2001 From: = Date: Wed, 10 Feb 2021 22:34:39 +1100 Subject: [PATCH] Add Mail Manager --- app/Helpers/Mail/GmailTransportManager.php | 10 ++++++---- app/Providers/MailServiceProvider.php | 15 ++++++++++----- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/app/Helpers/Mail/GmailTransportManager.php b/app/Helpers/Mail/GmailTransportManager.php index 628e511d628f..f82ee33eda56 100644 --- a/app/Helpers/Mail/GmailTransportManager.php +++ b/app/Helpers/Mail/GmailTransportManager.php @@ -2,12 +2,14 @@ namespace App\Helpers\Mail; +use Illuminate\Mail\MailManager; +use App\CustomMailDriver\CustomTransport; use Dacastro4\LaravelGmail\Services\Message\Mail; -use Illuminate\Mail\TransportManager; -class GmailTransportManager extends TransportManager + +class GmailTransportManager extends MailManager { - protected function createGmailDriver() + protected function createGmailTransport() { info('ping pong'); $token = $this->app['config']->get('services.gmail.token', []); @@ -15,4 +17,4 @@ class GmailTransportManager extends TransportManager return new GmailTransport($mail, $token); } -} +} \ No newline at end of file diff --git a/app/Providers/MailServiceProvider.php b/app/Providers/MailServiceProvider.php index 09a7df083d8a..acc322b1e0fa 100644 --- a/app/Providers/MailServiceProvider.php +++ b/app/Providers/MailServiceProvider.php @@ -4,22 +4,27 @@ namespace App\Providers; use App\Helpers\Mail\GmailTransportManager; use Illuminate\Mail\MailServiceProvider as MailProvider; +use Illuminate\Mail\TransportManager; class MailServiceProvider extends MailProvider { public function register() { - $this->registerSwiftTransport(); $this->registerIlluminateMailer(); - $this->registerMarkdownRenderer(); } - protected function registerSwiftTransport() + protected function registerIlluminateMailer() { + $this->app->singleton('mail.manager', function($app) { + return new GmailTransportManager($app); + }); - $this->app->singleton('swift.transport', function ($app) { - return new GmailTransportManager($app); + // Copied from Illuminate\Mail\MailServiceProvider + $this->app->bind('mailer', function ($app) { + return $app->make('mail.manager')->mailer(); }); } + } +