/**
  * @param ThemeMailer $mailer
  */
 public function handle(ThemeMailer $mailer)
 {
     //can't use the key 'message', it's being overridden probably by the mailer
     $data = array_merge(['email_from' => $this->email, 'email_from_name' => $this->name, 'email_to' => $this->contact->email, 'contact_message' => $this->message, 'subject' => $this->subject, 'email' => $this->email, 'name' => $this->name], $this->baseData());
     $me = $this;
     $mailer->send('contact::email', $data, function ($message) use($me) {
         /* @var Message $message */
         $message->subject($me->subject);
         if ($me->copy) {
             $message->cc($me->copy, $me->name);
         }
     });
 }
Beispiel #2
0
 /**
  * @param ThemeMailer $mail
  * @param TokenRepositoryInterface $tokens
  * @param Translator $lang
  * @param UserRepositoryInterface $users
  * @throws Exception
  */
 public function handle(ThemeMailer $mail, TokenRepositoryInterface $tokens, Translator $lang, UserRepositoryInterface $users)
 {
     try {
         $user = $users->findUserByEmail($this->email);
         if ($user) {
             $token = $tokens->createNewToken(Token::TYPE_RESET, $this->email);
             $user->resetToken()->associate($token);
             $user->save();
             $subject = $lang->get('users::emails.reset-password.subject');
             $data = array_merge($this->baseData(), ['user' => $user, 'token' => $token, 'email_to' => $this->email]);
             $send = $mail->send('users::emails.reset-password', $data, $subject);
             if ($send) {
                 $this->delete();
             }
         }
     } catch (Exception $e) {
         $this->release();
         throw $e;
     }
 }
 /**
  * @param ThemeMailer $mail
  * @param Translator $lang
  * @param TokenRepositoryInterface $tokens
  * @throws \Exception
  */
 public function handle(ThemeMailer $mail, Translator $lang, TokenRepositoryInterface $tokens)
 {
     try {
         $token = $tokens->createNewToken(Token::TYPE_CONFIRMATION, $this->user->email);
         if ($token) {
             $user = $this->user;
             $user->confirmationToken()->associate($token);
             $subject = $lang->get('users::emails.confirm-email.subject');
             $data = array_merge($this->baseData(), ['user' => $user, 'token' => $token, 'email_to' => $user->email]);
             $send = $mail->send('users::emails.confirm-email', $data, $subject);
             if ($send) {
                 $this->delete();
             }
             $user->save();
         }
     } catch (\Exception $e) {
         $this->release();
         throw $e;
     }
 }
 /**
  * @param ThemeMailer $mailer
  * @param Translator $lang
  */
 public function handle(ThemeMailer $mailer, Translator $lang)
 {
     $data = array_merge($this->baseData(), ['invitation' => $this->invitation, 'email_to' => $this->invitation->email]);
     return $mailer->send('account::admin.members.invitation.email', $data, $lang->get('account::admin.users.you-are-invited'));
 }