Example #1
0
 /**
  * @param string $purpose
  * @param mixed $object
  * @return int
  */
 public function send($purpose, $object)
 {
     $message = new \TYPO3\SwiftMailer\Message();
     $message->setSubject($this->getSubject($purpose))->setFrom($this->getSender())->setTo($this->getRecipient($object))->setBody($this->renderContent($purpose, ['value' => $object]), 'text/html');
     if ($purpose !== 'participantCompleteRegistration' && isset($this->configuration['Bcc'])) {
         $message->setBcc([$this->configuration['Bcc']['email'] => $this->configuration['Bcc']['name']]);
     }
     return $message->send();
 }
 /**
  * Sends email for comment approval
  *
  * @param \Lelesys\Plugin\News\Domain\Model\Comment $comment Comment for approval
  * @param \Lelesys\Plugin\News\Domain\Model\News $news The news
  * @return void
  */
 public function sendCommentApprovalNotification(\Lelesys\Plugin\News\Domain\Model\Comment $comment, \Lelesys\Plugin\News\Domain\Model\News $news)
 {
     $this->standaloneView->setTemplatePathAndFilename(FLOW_PATH_PACKAGES . $this->settings['notifications']['emailTemplatePath']);
     $this->standaloneView->assign('comment', $comment);
     $this->standaloneView->assign('adminEmail', $news->getCreatedBy());
     $this->standaloneView->assign('news', $news);
     $emailBody = $this->standaloneView->render();
     $toEmail = $news->getCreatedBy()->getPrimaryElectronicAddress()->getIdentifier();
     $mail = new \TYPO3\SwiftMailer\Message();
     $mail->setFrom(array($this->settings['notifications']['senderAddress'] => $this->settings['notifications']['senderName']))->setContentType('text/html')->setTo($toEmail)->setSubject('Comment Approval')->setBody($emailBody)->send();
 }
Example #3
0
 /**
  * Executes this finisher
  * @see AbstractFinisher::execute()
  *
  * @return void
  * @throws FinisherException
  */
 protected function executeInternal()
 {
     $formRuntime = $this->finisherContext->getFormRuntime();
     $standaloneView = $this->initializeStandaloneView();
     $standaloneView->assign('form', $formRuntime);
     $message = $standaloneView->render();
     $subject = $this->parseOption('subject');
     $recipientAddress = $this->parseOption('recipientAddress');
     $recipientName = $this->parseOption('recipientName');
     $senderAddress = $this->parseOption('senderAddress');
     $senderName = $this->parseOption('senderName');
     $replyToAddress = $this->parseOption('replyToAddress');
     $carbonCopyAddress = $this->parseOption('carbonCopyAddress');
     $blindCarbonCopyAddress = $this->parseOption('blindCarbonCopyAddress');
     $format = $this->parseOption('format');
     $testMode = $this->parseOption('testMode');
     if ($subject === null) {
         throw new FinisherException('The option "subject" must be set for the EmailFinisher.', 1327060320);
     }
     if ($recipientAddress === null) {
         throw new FinisherException('The option "recipientAddress" must be set for the EmailFinisher.', 1327060200);
     }
     if ($senderAddress === null) {
         throw new FinisherException('The option "senderAddress" must be set for the EmailFinisher.', 1327060210);
     }
     $mail = new \TYPO3\SwiftMailer\Message();
     $mail->setFrom(array($senderAddress => $senderName))->setTo(array($recipientAddress => $recipientName))->setSubject($subject);
     if ($replyToAddress !== null) {
         $mail->setReplyTo($replyToAddress);
     }
     if ($carbonCopyAddress !== null) {
         $mail->setCc($carbonCopyAddress);
     }
     if ($blindCarbonCopyAddress !== null) {
         $mail->setBcc($blindCarbonCopyAddress);
     }
     if ($format === self::FORMAT_PLAINTEXT) {
         $mail->setBody($message, 'text/plain');
     } else {
         $mail->setBody($message, 'text/html');
     }
     if ($testMode === true) {
         \Neos\Flow\var_dump(array('sender' => array($senderAddress => $senderName), 'recipient' => array($recipientAddress => $recipientName), 'replyToAddress' => $replyToAddress, 'carbonCopyAddress' => $carbonCopyAddress, 'blindCarbonCopyAddress' => $blindCarbonCopyAddress, 'message' => $message, 'format' => $format), 'E-Mail "' . $subject . '"');
     } else {
         $mail->send();
     }
 }
 private function sendMail($from, $to, $data, $templateFile)
 {
     $template = new \TYPO3\Fluid\View\StandaloneView();
     $template->setFormat('html');
     $template->setTemplatePathAndFilename('resource://DRKTettnang.Homepage/Private/Templates/Mail/' . $templateFile . '.html');
     $template->setPartialRootPath('resource://DRKTettnang.Homepage/Private/Partials/');
     $template->assign('data', $data);
     $subject = trim($template->renderSection('subject'));
     $html = $template->render();
     $body = trim($template->renderSection('body'));
     $html2text = new \DRKTettnang\Homepage\Vendor\Html2Text($body);
     $plain = $html2text->getText();
     $mail = new \TYPO3\SwiftMailer\Message();
     $mail->setTo($to);
     $mail->setFrom($from);
     $mail->setSubject($subject);
     $mail->addPart($html, 'text/html', 'utf-8');
     $mail->addPart($plain, 'text/plain', 'utf-8');
     $mail->send();
     $this->systemLogger->log('Sent mail to ' . $to, LOG_INFO);
 }
 /**
  * Helper function to instantiate SwiftMailer and effectively send the mail
  * out to the recipient.
  *
  * @param string the recipient's e-mail address
  * @param string the name of the recipient
  * @param string the message's subject
  * @param string the message's body
  *
  * @return void
  */
 protected function sendNotificationMail($recipientEmail, $recipientName, $subject, $messageBody)
 {
     $mail = new \TYPO3\SwiftMailer\Message();
     $mail->setFrom(array($this->settings['senderEmail'] => $this->settings['senderName']))->setTo(array($recipientEmail => $recipientName))->setSubject($subject)->setBody($messageBody);
     $mail->send();
 }