From 7dccabcca4d76f4ee045eca244f4232551fa34a0 Mon Sep 17 00:00:00 2001
From: "S.Listl" <s.listl@adito.de>
Date: Thu, 31 Oct 2019 14:06:07 +0000
Subject: [PATCH] Email preset sender, added caption for custom template

(cherry picked from commit c16596fd7aeecdcdf1e39ab944b73dddb08bf87c)
---
 entity/BulkMail_entity/BulkMail_entity.aod         |  1 +
 entity/Email_entity/Email_entity.aod               |  1 +
 entity/Letter_entity/Letter_entity.aod             |  1 +
 entity/SerialLetter_entity/SerialLetter_entity.aod |  1 +
 language/_____LANGUAGE_de/_____LANGUAGE_de.aod     |  4 ++++
 process/Email_lib/process.js                       | 12 +++++-------
 6 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/entity/BulkMail_entity/BulkMail_entity.aod b/entity/BulkMail_entity/BulkMail_entity.aod
index a967c20f61..b4956b3657 100644
--- a/entity/BulkMail_entity/BulkMail_entity.aod
+++ b/entity/BulkMail_entity/BulkMail_entity.aod
@@ -113,6 +113,7 @@
     </entityConsumer>
     <entityField>
       <name>bindata</name>
+      <title>Custom template</title>
       <contentType>FILE</contentType>
       <valueProcess>%aditoprj%/entity/BulkMail_entity/entityfields/bindata/valueProcess.js</valueProcess>
       <onValueChange>%aditoprj%/entity/BulkMail_entity/entityfields/bindata/onValueChange.js</onValueChange>
diff --git a/entity/Email_entity/Email_entity.aod b/entity/Email_entity/Email_entity.aod
index 1c0cd341fd..78e2c87c87 100644
--- a/entity/Email_entity/Email_entity.aod
+++ b/entity/Email_entity/Email_entity.aod
@@ -65,6 +65,7 @@
     </entityParameter>
     <entityField>
       <name>bindata</name>
+      <title>Custom template</title>
       <contentType>FILE</contentType>
     </entityField>
     <entityActionField>
diff --git a/entity/Letter_entity/Letter_entity.aod b/entity/Letter_entity/Letter_entity.aod
index d4a202aae2..97fe0b3fe0 100644
--- a/entity/Letter_entity/Letter_entity.aod
+++ b/entity/Letter_entity/Letter_entity.aod
@@ -38,6 +38,7 @@
     </entityParameter>
     <entityField>
       <name>bindata</name>
+      <title>Custom template</title>
       <contentType>FILE</contentType>
     </entityField>
     <entityActionField>
diff --git a/entity/SerialLetter_entity/SerialLetter_entity.aod b/entity/SerialLetter_entity/SerialLetter_entity.aod
index c5508c8d60..ea1946f674 100644
--- a/entity/SerialLetter_entity/SerialLetter_entity.aod
+++ b/entity/SerialLetter_entity/SerialLetter_entity.aod
@@ -95,6 +95,7 @@
     </entityConsumer>
     <entityField>
       <name>bindata</name>
+      <title>Custom template</title>
       <contentType>FILE</contentType>
     </entityField>
     <entityField>
diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
index d6cdf3c96e..fe5a2b04ac 100644
--- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
+++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
@@ -77,6 +77,10 @@
       <key>Long string value</key>
       <value>Langer String-Wert</value>
     </entry>
+    <entry>
+      <key>Custom template</key>
+      <value>Benutzerdefinierte Vorlage</value>
+    </entry>
     <entry>
       <key>Attribute groups can't be selected</key>
       <value>Eigenschafsgruppen können nicht verwendet werden</value>
diff --git a/process/Email_lib/process.js b/process/Email_lib/process.js
index 64ac007252..4354a81837 100644
--- a/process/Email_lib/process.js
+++ b/process/Email_lib/process.js
@@ -107,13 +107,8 @@ Email.fromRFC = function (pBase64RFC)
 Email.fromTemplate = function (pTemplateId, pContactId, pBindata)
 {
     var template;
-    if (pBindata && pBindata.isFilled())
-    {
-        if (BulkMailUtils.isValidMimeType(pBindata.mimeType))
-        {
-            template = new DocumentTemplate(pBindata.bindata, DocumentTemplate.types.fromMimeType(pBindata.mimeType), pBindata.filename, true);
-        }
-    }
+    if (pBindata && pBindata.isFilled() && BulkMailUtils.isValidMimeType(pBindata.mimeType))
+        template = new DocumentTemplate(pBindata.bindata, DocumentTemplate.types.fromMimeType(pBindata.mimeType), pBindata.filename, true);
     else
         template = DocumentTemplate.loadTemplate(pTemplateId);
         
@@ -210,6 +205,9 @@ Email.prototype._newMailObject = function()
         mail.clearRecipients(mailId, mail.RECIPIENT_BCC);
     }
     
+    if (this.sender)
+        mail.setSender(mailId, this.sender);
+        
     if (this.toRecipients.length)
         mail.addRecipients(mailId, mail.RECIPIENT_TO, this.toRecipients);
 
-- 
GitLab