From 973daa40ee078ab443e034b92f482e4841b3a229 Mon Sep 17 00:00:00 2001
From: Torsten Oppermann <torsten@sgalinski.de>
Date: Thu, 16 Feb 2017 17:31:06 +0100
Subject: [PATCH] [TASK] Adding method to use predefined values for the new
 fields

---
 Classes/Service/MailTemplateService.php | 31 +++++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/Classes/Service/MailTemplateService.php b/Classes/Service/MailTemplateService.php
index 23ef47c0..2aa09075 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;
 	}
 
-- 
GitLab