コード例 #1
1
 /**
  * {@inheritDoc}
  */
 public function createSendGridEmail(EmailInterface $email)
 {
     $sendGridEmail = new SendGridEmail();
     $sendGridEmail->to = $email->getTo();
     $sendGridEmail->setFrom($email->getFrom());
     $sendGridEmail->setFromName($email->getFromName());
     $sendGridEmail->setSubject($email->getSubject());
     $sendGridEmail->setText($email->getBodyText());
     $sendGridEmail->setHtml($email->getBodyHtml());
     if (is_array($email->getAttachments())) {
         $sendGridEmail->setAttachments($email->getAttachments());
     }
     if ($email instanceof EmailDecorator) {
         $sendGridEmail->setCategories($email->getCategories());
         if (!is_null($email->getSendAt())) {
             $sendGridEmail->setSendAt($email->getSendAt());
         }
     }
     return $sendGridEmail;
 }
 protected static function buildBaseEmail(array $from, array $to, $subject, array $additionalHeaders = array(), array $attachments = null)
 {
     $email = new Email();
     $fromAddress = current(array_keys($from));
     $fromName = current($from);
     $email->setFrom($fromAddress)->setFromName($fromName)->setSubject($subject);
     // Set to headers
     foreach ($to as $toAddress => $toName) {
         $email->addTo($toAddress, $toName);
     }
     // Set CC header if a value is given
     if (isset($additionalHeaders["cc"]) && is_array($cc = $additionalHeaders["cc"])) {
         $email->setCcs($cc);
     }
     // Set BCC header if a valud is given
     if (isset($additionalHeaders["bcc"]) && is_array($bcc = $additionalHeaders["bcc"])) {
         $email->setBccs($bcc);
     }
     if (isset($additionalHeaders["reply-to"])) {
         $email->setReplyTo($additionalHeaders["reply-to"]);
     }
     if (isset($attachments)) {
         $email->setAttachments($attachments);
     }
     return $email;
 }