From 6df79b255e6f848de89711b4fa7d4a6405de40aa Mon Sep 17 00:00:00 2001
From: "S.Listl" <S.Listl@SLISTL.aditosoftware.local>
Date: Mon, 5 Aug 2019 08:17:52 +0200
Subject: [PATCH] Letter docx fix

---
 .../recordcontainers/jdito/onInsert.js                     | 3 ++-
 .../SerialLetterAddRecipients_entity.aod                   | 1 +
 .../recordcontainers/jdito/onInsert.js                     | 1 +
 process/Bulkmail_lib/process.js                            | 7 ++++++-
 process/DocumentTemplate_lib/process.js                    | 2 +-
 5 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/entity/BulkMailAddRecipients_entity/recordcontainers/jdito/onInsert.js b/entity/BulkMailAddRecipients_entity/recordcontainers/jdito/onInsert.js
index e1544b133d5..cce82d39abe 100644
--- a/entity/BulkMailAddRecipients_entity/recordcontainers/jdito/onInsert.js
+++ b/entity/BulkMailAddRecipients_entity/recordcontainers/jdito/onInsert.js
@@ -4,4 +4,5 @@ import("system.vars");
 var contactIds = JSON.parse(vars.getString("$field.recipientContactIds"));
 var bulkMailId = vars.get("$field.BULKMAIL_ID");
 
-BulkMailUtils.addRecipients(bulkMailId, contactIds);
\ No newline at end of file
+BulkMailUtils.addRecipients(bulkMailId, contactIds);
+BulkMailUtils.openBulkMail(bulkMailId);
\ No newline at end of file
diff --git a/entity/SerialLetterAddRecipients_entity/SerialLetterAddRecipients_entity.aod b/entity/SerialLetterAddRecipients_entity/SerialLetterAddRecipients_entity.aod
index e29e0663fbc..66768fb7f3e 100644
--- a/entity/SerialLetterAddRecipients_entity/SerialLetterAddRecipients_entity.aod
+++ b/entity/SerialLetterAddRecipients_entity/SerialLetterAddRecipients_entity.aod
@@ -11,6 +11,7 @@
       <name>SERIALLETTER_ID</name>
       <title>Serial letter</title>
       <consumer>SerialLetters</consumer>
+      <mandatory v="true" />
     </entityField>
     <entityField>
       <name>UID</name>
diff --git a/entity/SerialLetterAddRecipients_entity/recordcontainers/jdito/onInsert.js b/entity/SerialLetterAddRecipients_entity/recordcontainers/jdito/onInsert.js
index 3afb7c68f28..e5d6b8596f1 100644
--- a/entity/SerialLetterAddRecipients_entity/recordcontainers/jdito/onInsert.js
+++ b/entity/SerialLetterAddRecipients_entity/recordcontainers/jdito/onInsert.js
@@ -5,3 +5,4 @@ var contactIds = JSON.parse(vars.getString("$field.recipientContactIds"));
 var letterId = vars.get("$field.SERIALLETTER_ID");
 
 SerialLetterUtils.addRecipients(letterId, contactIds);
+SerialLetterUtils.openSerialLetter(letterId);
\ No newline at end of file
diff --git a/process/Bulkmail_lib/process.js b/process/Bulkmail_lib/process.js
index 25c4071b35d..7e3fde56fb6 100644
--- a/process/Bulkmail_lib/process.js
+++ b/process/Bulkmail_lib/process.js
@@ -247,7 +247,7 @@ BulkMailUtils.filterNewRecipients = function (pBulkMailId, pContactIds)
 
 BulkMailUtils.openBulkMail = function (pBulkMailId)
 {
-    neon.openContext("BulkMail", "BulkMailMain_view", [pBulkMailId], neon.OPERATINGSTATE_NEW, null);
+    neon.openContext("BulkMail", "BulkMailMain_view", [pBulkMailId], neon.OPERATINGSTATE_VIEW, null);
 }
 
 function SerialLetterUtils () {}
@@ -304,4 +304,9 @@ SerialLetterUtils.isRecipient = function (pSerialLetterId, pContactId)
         .andPrepare("LETTERRECIPIENT.SERIALLETTER_ID", pSerialLetterId)
         .buildSql("select count(*) from LETTERRECIPIENT") //TODO: is there a way exists could be used?
     ) != "0";
+}
+
+SerialLetterUtils.openSerialLetter = function (pSerialLetterId)
+{
+    neon.openContext("SerialLetter", "SerialLetterMain_view", [pSerialLetterId], neon.OPERATINGSTATE_VIEW, null);
 }
\ No newline at end of file
diff --git a/process/DocumentTemplate_lib/process.js b/process/DocumentTemplate_lib/process.js
index 2bfd37dd64c..121ae9d04a7 100644
--- a/process/DocumentTemplate_lib/process.js
+++ b/process/DocumentTemplate_lib/process.js
@@ -485,7 +485,7 @@ TemplateHelper._getReplacedDOCX = function (pTemplate, pReplacements)
 {
     var replacements = {};
     for (let placeholder in pReplacements)  //removes the prefix and postfix, the process needs it like this
-        replacements[placeholder.slice(3, -3)] = pReplacements[placeholder];
+        replacements[placeholder.slice(2, -2)] = pReplacements[placeholder];
 
     //this is executed as a process because of better performance
     var documentData = process.execute("getDocxDocument_serverProcess", {
-- 
GitLab