/** * Sends a message using the mailer available at `$app->mailer`. The message may be specified * as an array of attributes to create a {@link Message} instance, or directly * a {@link Message} instance. * * @param Core|CoreBindings $app * @param array|Message $message A message source suitable for {@link Message::from()}. * @param array $options * * @return mixed */ public static function mail(Core $app, $message, array $options = []) { $options += ['sender' => null]; $mailer = $app->mailer; $message = Message::from($message); $sender = $options['sender']; if ($sender) { new BeforeMailEvent($sender, $message, $mailer); } $rc = $mailer($message); if ($sender) { new MailEvent($sender, $rc, $message, $mailer); } return $rc; }
/** * Send the message using the mailer available at `$app->mailer`. * * @param Core $app * @param array|Message $message A message source suitable for {@link Message::from()}. * @param array $options * * @return mixed */ public static function core_mail(Core $app, $message, array $options = []) { $options += ['sender' => null]; /* @var $mailer Mailer */ $mailer = $app->mailer; $message = Message::from($message); $sender = $options['sender']; if ($sender && class_exists('ICanBoogie\\Event')) { new BeforeMailEvent($sender, $message, $mailer); } $rc = $mailer($message); if ($sender && class_exists('ICanBoogie\\Event')) { new MailEvent($sender, $rc, $message, $mailer); } return $rc; }