From 6240366a6c1b90e7395ace93e80c488f5b5e4eff Mon Sep 17 00:00:00 2001
From: "b.ulrich" <b.ulrich@adito.de>
Date: Fri, 25 Sep 2020 08:16:55 +0200
Subject: [PATCH] [Projekt: Entwicklung - Neon][TicketNr.: 1064735][Auswahl von
 E-Mail-Templates ]

---
 .../recordcontainers/db/conditionProcess.js         |  2 +-
 entity/Email_entity/Email_entity.aod                | 13 +++++++++++++
 .../entityfields/comingfrom/valueProcess.js         |  2 +-
 .../valueProcess.js                                 |  4 ++++
 .../valueProcess.js                                 |  5 +++++
 .../entityfields/newemail/onActionProcess.js        |  3 ++-
 .../entityfields/newemail/onActionProcess.js        |  3 ++-
 process/Email_lib/process.js                        |  6 ++++--
 8 files changed, 32 insertions(+), 6 deletions(-)
 create mode 100644 entity/Email_entity/entityfields/documenttemplates/children/documenttemplatetypeclassification_param/valueProcess.js
 create mode 100644 entity/Email_entity/entityfields/documenttemplatetypeclassification/valueProcess.js

diff --git a/entity/DocumentTemplate_entity/recordcontainers/db/conditionProcess.js b/entity/DocumentTemplate_entity/recordcontainers/db/conditionProcess.js
index 40ced6b7b9..35836fe0a8 100644
--- a/entity/DocumentTemplate_entity/recordcontainers/db/conditionProcess.js
+++ b/entity/DocumentTemplate_entity/recordcontainers/db/conditionProcess.js
@@ -15,4 +15,4 @@ if(vars.get("$param.ComingFrom_param"))
         .and("DOCUMENTTEMPLATEPLACEOFUSE.DOCUMENTTEMPLATE_ID = DOCUMENTTEMPLATE.DOCUMENTTEMPLATEID"), SqlBuilder.EXISTS());
 }
 
-result.string(cond);
\ No newline at end of file
+result.string(cond.toString());
\ No newline at end of file
diff --git a/entity/Email_entity/Email_entity.aod b/entity/Email_entity/Email_entity.aod
index f0721f5e93..3fae2a234b 100644
--- a/entity/Email_entity/Email_entity.aod
+++ b/entity/Email_entity/Email_entity.aod
@@ -43,6 +43,10 @@
           <name>ComingFrom_param</name>
           <valueProcess>%aditoprj%/entity/Email_entity/entityfields/documenttemplates/children/comingfrom_param/valueProcess.js</valueProcess>
         </entityParameter>
+        <entityParameter>
+          <name>DocumentTemplateTypeClassification_param</name>
+          <valueProcess>%aditoprj%/entity/Email_entity/entityfields/documenttemplates/children/documenttemplatetypeclassification_param/valueProcess.js</valueProcess>
+        </entityParameter>
       </children>
     </entityConsumer>
     <entityParameter>
@@ -136,6 +140,15 @@
       <name>#PROVIDER_AGGREGATES</name>
       <useAggregates v="true" />
     </entityProvider>
+    <entityField>
+      <name>documenttemplatetypeclassification</name>
+      <valueProcess>%aditoprj%/entity/Email_entity/entityfields/documenttemplatetypeclassification/valueProcess.js</valueProcess>
+    </entityField>
+    <entityParameter>
+      <name>DocumentTemplateTypeClassification_param</name>
+      <expose v="true" />
+      <description></description>
+    </entityParameter>
   </entityFields>
   <recordContainers>
     <datalessRecordContainer>
diff --git a/entity/Email_entity/entityfields/comingfrom/valueProcess.js b/entity/Email_entity/entityfields/comingfrom/valueProcess.js
index e1559e60a1..534410568e 100644
--- a/entity/Email_entity/entityfields/comingfrom/valueProcess.js
+++ b/entity/Email_entity/entityfields/comingfrom/valueProcess.js
@@ -2,4 +2,4 @@ import("system.vars");
 import("system.result");
 
 if(vars.get("$param.ComingFrom_param"))
-result.string(vars.get("$param.ComingFrom_param"));
\ No newline at end of file
+    result.string(vars.get("$param.ComingFrom_param"));
\ No newline at end of file
diff --git a/entity/Email_entity/entityfields/documenttemplates/children/documenttemplatetypeclassification_param/valueProcess.js b/entity/Email_entity/entityfields/documenttemplates/children/documenttemplatetypeclassification_param/valueProcess.js
new file mode 100644
index 0000000000..1ee6655bba
--- /dev/null
+++ b/entity/Email_entity/entityfields/documenttemplates/children/documenttemplatetypeclassification_param/valueProcess.js
@@ -0,0 +1,4 @@
+import("system.vars");
+import("system.result");
+
+result.string(vars.get("$field.documenttemplatetypeclassification"));
\ No newline at end of file
diff --git a/entity/Email_entity/entityfields/documenttemplatetypeclassification/valueProcess.js b/entity/Email_entity/entityfields/documenttemplatetypeclassification/valueProcess.js
new file mode 100644
index 0000000000..9e3fc1ddf9
--- /dev/null
+++ b/entity/Email_entity/entityfields/documenttemplatetypeclassification/valueProcess.js
@@ -0,0 +1,5 @@
+import("system.vars");
+import("system.result");
+
+if(vars.get("$param.DocumentTemplateTypeClassification_param"))
+    result.string(vars.get("$param.DocumentTemplateTypeClassification_param"));
\ No newline at end of file
diff --git a/entity/Organisation_entity/entityfields/newemail/onActionProcess.js b/entity/Organisation_entity/entityfields/newemail/onActionProcess.js
index 3909fcec58..a46efc111d 100644
--- a/entity/Organisation_entity/entityfields/newemail/onActionProcess.js
+++ b/entity/Organisation_entity/entityfields/newemail/onActionProcess.js
@@ -1,4 +1,5 @@
 import("system.vars");
 import("Email_lib");
+import("KeywordRegistry_basic");
 
-EmailWritingUtils.openNewMail(vars.getString("$field.CONTACTID"), null, vars.get("$sys.currentcontextname"));
\ No newline at end of file
+EmailWritingUtils.openNewMail(vars.getString("$field.CONTACTID"), null, vars.get("$sys.currentcontextname"), null, null, null, null, null, $KeywordRegistry.documentTemplateTypeCategory$single());
\ No newline at end of file
diff --git a/entity/Person_entity/entityfields/newemail/onActionProcess.js b/entity/Person_entity/entityfields/newemail/onActionProcess.js
index f4fedc1dc3..a4b80166ed 100644
--- a/entity/Person_entity/entityfields/newemail/onActionProcess.js
+++ b/entity/Person_entity/entityfields/newemail/onActionProcess.js
@@ -1,5 +1,6 @@
 import("system.vars");
 import("Email_lib");
+import("KeywordRegistry_basic");
 
-EmailWritingUtils.openNewMail(vars.getString("$field.CONTACTID"), null, vars.get("$sys.currentcontextname"));
 
+EmailWritingUtils.openNewMail(vars.getString("$field.CONTACTID"), null, vars.get("$sys.currentcontextname"), null, null, null, null, null, $KeywordRegistry.documentTemplateTypeCategory$single());
\ No newline at end of file
diff --git a/process/Email_lib/process.js b/process/Email_lib/process.js
index 0a29f110ad..373495625a 100644
--- a/process/Email_lib/process.js
+++ b/process/Email_lib/process.js
@@ -81,8 +81,9 @@ EmailWritingUtils.openMailTemplate = function (pToRecipients, pSenderContactId,
  * @param {String} pEmailFilename optional file name of the email.
  * @param {String} [pAdditionalPlaceholders] additional placeholders for the email
  * @param {Array[]} [pUpdateStatements] an array with update statements which will be executed after email is downloaded/sent.
+ * @param {String} pTypeClassification Documenttemplatetypeclassification
  */
-EmailWritingUtils.openNewMail = function (pToContactId, pToEmailAddress, pComingFrom, pAttachmentArray, pNotificationMsg, pEmailFilename, pAdditionalPlaceholders, pUpdateStatements)
+EmailWritingUtils.openNewMail = function (pToContactId, pToEmailAddress, pComingFrom, pAttachmentArray, pNotificationMsg, pEmailFilename, pAdditionalPlaceholders, pUpdateStatements, pTypeClassification)
 {
     var params = {
         "ContactId_param" : pToContactId,
@@ -91,7 +92,8 @@ EmailWritingUtils.openNewMail = function (pToContactId, pToEmailAddress, pComing
         "NotificationMsg_param" : pNotificationMsg,
         "EmailFilename" : pEmailFilename,
         "AdditionalPlaceholders_param" : JSON.stringify(pAdditionalPlaceholders),
-        "UpdateStatements_param" : JSON.stringify(pUpdateStatements)
+        "UpdateStatements_param" : JSON.stringify(pUpdateStatements),
+        "DocumentTemplateTypeClassification_param" : pTypeClassification
     };
     
     if (pToEmailAddress)
-- 
GitLab