diff --git a/Classes/Service/MailTemplateService.php b/Classes/Service/MailTemplateService.php index 23ef47c02d90b87d6c984ec7e9588a83e12823ea..2aa09075d799133ab1e4c9642daa023ca11bb329 100644 --- a/Classes/Service/MailTemplateService.php +++ b/Classes/Service/MailTemplateService.php @@ -259,6 +259,32 @@ class MailTemplateService { return self::$registerArray; } + /** + * Sets the predefined values for this template, supplied by the Editor, if possible + * values for cc, bcc, replyTo, fromMail and fromName + * + * @param string $extensionKey + * @param string $templateName + * @param string $language + * @return bool + */ + public function loadPredefinedValuesForTemplate($extensionKey, $templateName, $language) { + /** @var Template $template */ + $template = $this->templateRepository->findOneByTemplate( + $this->extensionKey, $this->templateName, $this->language + ); + + if ($template !== NULL) { + $this->setCcAddresses(explode(',', $template->getCc())); + $this->setBccAddresses(explode(',', $template->getBcc())); + $this->setReplyToAddress($template->getReplyTo()); + $this->setFromAddress($template->getFromMail(), $template->getFromName()); + return true; + } + + return false; + } + /** * Send the Email * @@ -389,11 +415,12 @@ class MailTemplateService { /** * @param string $fromAddress + * @param string $fromName * @return MailTemplateService */ - public function setFromAddress($fromAddress) { + public function setFromAddress($fromAddress, $fromName = '') { $this->fromAddress = $fromAddress; - $this->mailMessage->setFrom($fromAddress); + $this->mailMessage->setFrom($fromAddress, $fromName); return $this; }