/** * Send the mail * * @param array $email Array with all needed mail information * @return bool Mail successfully sent */ protected function sendTemplateEmail(array $email) { /** @var MailMessage $message */ $message = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Mail\\MailMessage'); TypoScriptUtility::overwriteValueFromTypoScript($email['subject'], $this->overwriteConfiguration, 'subject'); $message->setTo(array($email['receiverEmail'] => $email['receiverName']))->setFrom(array($email['senderEmail'] => $email['senderName']))->setSubject($email['subject'])->setCharset(FrontendUtility::getCharset()); $message = $this->addCc($message); $message = $this->addBcc($message); $message = $this->addReturnPath($message); $message = $this->addReplyAddresses($message); $message = $this->addPriority($message); $message = $this->addAttachmentsFromUploads($message); $message = $this->addAttachmentsFromTypoScript($message); $message = $this->addHtmlBody($message, $email); $message = $this->addPlainBody($message, $email); $this->signalSlotDispatcher->dispatch(__CLASS__, __FUNCTION__ . 'BeforeSend', array($message, $email, $this->mail, $this->settings, $this->type)); $message->send(); $this->updateMail($email); return $message->isSent(); }