/** * {@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; }