![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/job-board.corals.io/vendor/laravel/framework/src/Illuminate/Mail/ |
<?php namespace Illuminate\Mail; use Illuminate\Contracts\Mail\Mailable as MailableContract; use Illuminate\Contracts\Mail\Mailer as MailerContract; use Illuminate\Contracts\Translation\HasLocalePreference; use Illuminate\Support\Traits\Conditionable; class PendingMail { use Conditionable; /** * The mailer instance. * * @var \Illuminate\Contracts\Mail\Mailer */ protected $mailer; /** * The locale of the message. * * @var string */ protected $locale; /** * The "to" recipients of the message. * * @var array */ protected $to = []; /** * The "cc" recipients of the message. * * @var array */ protected $cc = []; /** * The "bcc" recipients of the message. * * @var array */ protected $bcc = []; /** * Create a new mailable mailer instance. * * @param \Illuminate\Contracts\Mail\Mailer $mailer * @return void */ public function __construct(MailerContract $mailer) { $this->mailer = $mailer; } /** * Set the locale of the message. * * @param string $locale * @return $this */ public function locale($locale) { $this->locale = $locale; return $this; } /** * Set the recipients of the message. * * @param mixed $users * @return $this */ public function to($users) { $this->to = $users; if (! $this->locale && $users instanceof HasLocalePreference) { $this->locale($users->preferredLocale()); } return $this; } /** * Set the recipients of the message. * * @param mixed $users * @return $this */ public function cc($users) { $this->cc = $users; return $this; } /** * Set the recipients of the message. * * @param mixed $users * @return $this */ public function bcc($users) { $this->bcc = $users; return $this; } /** * Send a new mailable message instance. * * @param \Illuminate\Contracts\Mail\Mailable $mailable * @return void */ public function send(MailableContract $mailable) { $this->mailer->send($this->fill($mailable)); } /** * Push the given mailable onto the queue. * * @param \Illuminate\Contracts\Mail\Mailable $mailable * @return mixed */ public function queue(MailableContract $mailable) { return $this->mailer->queue($this->fill($mailable)); } /** * Deliver the queued message after the given delay. * * @param \DateTimeInterface|\DateInterval|int $delay * @param \Illuminate\Contracts\Mail\Mailable $mailable * @return mixed */ public function later($delay, MailableContract $mailable) { return $this->mailer->later($delay, $this->fill($mailable)); } /** * Populate the mailable with the addresses. * * @param \Illuminate\Contracts\Mail\Mailable $mailable * @return \Illuminate\Mail\Mailable */ protected function fill(MailableContract $mailable) { return tap($mailable->to($this->to) ->cc($this->cc) ->bcc($this->bcc), function (MailableContract $mailable) { if ($this->locale) { $mailable->locale($this->locale); } }); } }