Viewing file: MailServiceProvider.php (1.72 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Illuminate\Mail;
use Illuminate\Contracts\Support\DeferrableProvider; use Illuminate\Support\ServiceProvider;
class MailServiceProvider extends ServiceProvider implements DeferrableProvider { /** * Register the service provider. * * @return void */ public function register() { $this->registerIlluminateMailer(); $this->registerMarkdownRenderer(); }
/** * Register the Illuminate mailer instance. * * @return void */ protected function registerIlluminateMailer() { $this->app->singleton('mail.manager', function ($app) { return new MailManager($app); });
$this->app->bind('mailer', function ($app) { return $app->make('mail.manager')->mailer(); }); }
/** * Register the Markdown renderer instance. * * @return void */ protected function registerMarkdownRenderer() { if ($this->app->runningInConsole()) { $this->publishes([ __DIR__.'/resources/views' => $this->app->resourcePath('views/vendor/mail'), ], 'laravel-mail'); }
$this->app->singleton(Markdown::class, function ($app) { $config = $app->make('config');
return new Markdown($app->make('view'), [ 'theme' => $config->get('mail.markdown.theme', 'default'), 'paths' => $config->get('mail.markdown.paths', []), ]); }); }
/** * Get the services provided by the provider. * * @return array */ public function provides() { return [ 'mail.manager', 'mailer', Markdown::class, ]; } }
|