/**
  * Set a few dependencies on the mailer instance.
  *
  * @param  \Illuminate\Mail\Mailer  $mailer
  * @param  \Illuminate\Foundation\Application  $app
  * @return void
  */
 protected function setMailerDependencies($mailer, $app)
 {
     $mailer->setContainer($app);
     if ($app->bound('queue')) {
         $mailer->setQueue($app['queue']);
     }
 }
예제 #2
0
 /**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->registerSwiftMailer();
     $this->app['mailer'] = $this->app->share(function ($app) {
         // Once we have create the mailer instance, we will set a container instance
         // on the mailer. This allows us to resolve mailer classes via containers
         // for maximum testability on said classes instead of passing Closures.
         $mailer = new Mailer($app['view'], $app['swift.mailer']);
         $mailer->setLogger($app['log'])->setQueue($app['queue']);
         $mailer->setContainer($app);
         // If a "from" address is set, we will set it on the mailer so that all mail
         // messages sent by the applications will utilize the same "from" address
         // on each one, which makes the developer's life a lot more convenient.
         $from = $app['config']['mail.from'];
         if (is_array($from) and isset($from['address'])) {
             $mailer->alwaysFrom($from['address'], $from['name']);
         }
         // Here we will determine if the mailer should be in "pretend" mode for this
         // environment, which will simply write out e-mail to the logs instead of
         // sending it over the web, which is useful for local dev enviornments.
         $pretend = $app['config']->get('mail.pretend', false);
         $mailer->pretend($pretend);
         return $mailer;
     });
 }
예제 #3
0
 /**
  * Set a few dependencies on the mailer instance.
  *
  * @param  \Illuminate\Mail\Mailer  $mailer
  * @param  \Illuminate\Foundation\Application  $app
  * @return void
  */
 protected function setMailerDependencies($mailer, $app)
 {
     $mailer->setContainer($app);
     if ($app->bound('log')) {
         $mailer->setLogger($app['log']->getMonolog());
     }
     if ($app->bound('queue')) {
         $mailer->setQueue($app['queue.connection']);
     }
 }
 /**
  * Set a few dependencies on the mailer instance.
  *
  * @param  \Illuminate\Mail\Mailer  $mailer
  * @param  \Illuminate\Foundation\Application  $app
  * @return void
  */
 protected function setMailerDependencies($mailer, $app)
 {
     $mailer->setContainer($app);
     if ($app->bound('Psr\\Log\\LoggerInterface')) {
         $mailer->setLogger($app->make('Psr\\Log\\LoggerInterface'));
     }
     if ($app->bound('queue')) {
         $mailer->setQueue($app['queue.connection']);
     }
 }
 /**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->registerSwiftMailer();
     $this->app['mailer'] = $this->app->share(function ($app) {
         // Once we have create the mailer instance, we will set a container instance
         // on the mailer. This allows us to resolve mailer classes via containers
         // for maximum testability on said classes instead of passing Closures.
         $mailer = new Mailer($app['view'], $app['swift.mailer']);
         $mailer->setLogger($app['log'])->setQueue($app['queue']);
         $mailer->setContainer($app);
         $from = $app['config']['mail.from'];
         // If a "from" address is set, we will set it on the mailer so that all mail
         // messages sent by the applications will utilize the same "from" address
         // on each one, which makes the developer's life a lot more convenient.
         if (is_array($from) and isset($from['address'])) {
             $mailer->alwaysFrom($from['address'], $from['name']);
         }
         return $mailer;
     });
 }
예제 #6
0
 /**
  * Set the IoC container instance.
  *
  * @param \Illuminate\Contracts\Container\Container $container
  * @return void 
  * @static 
  */
 public static function setContainer($container)
 {
     \Illuminate\Mail\Mailer::setContainer($container);
 }