From 35eb85b4f305364b52a3c4b0efd0e7282914ca45 Mon Sep 17 00:00:00 2001
From: "j.goderbauer" <j.goderbauer@adito.de>
Date: Tue, 27 Nov 2018 12:46:15 +0100
Subject: [PATCH] [Projekt: Entwicklung - Neon][TicketNr.: 1027750][JDito -
 libray Standard ist komplett definiert und wird in allen libs verwendet]
 refactor Date_lib

---
 .../entityfields/contractdue/onValidation.js  |  3 +-
 .../entityfields/contractend/onValidation.js  |  5 +-
 .../contractstart/onValidation.js             |  5 +-
 .../entityfields/offerdate/valueProcess.js    |  1 -
 .../entityfields/valid_from/onValidation.js   |  5 +-
 .../entityfields/valid_to/onValidation.js     |  5 +-
 .../entityfields/enddate/valueProcess.js      |  1 -
 .../entityfields/startdate/valueProcess.js    |  1 -
 process/Date_lib/process.js                   | 81 +++++++++----------
 process/Neon_lib/process.js                   |  3 +-
 10 files changed, 50 insertions(+), 60 deletions(-)

diff --git a/entity/Contract_entity/entityfields/contractdue/onValidation.js b/entity/Contract_entity/entityfields/contractdue/onValidation.js
index f220af58521..eec165e723c 100644
--- a/entity/Contract_entity/entityfields/contractdue/onValidation.js
+++ b/entity/Contract_entity/entityfields/contractdue/onValidation.js
@@ -5,9 +5,8 @@ import("Date_lib");
 import("Util_lib");
 import("Entity_lib");
 
-var dateUtils = new DateUtils();
 var cDue = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.CONTRACTDUE"));
 
-if (dateUtils.validateBeginnBeforeEnd(vars.get("$field.CONTRACTSTART"), cDue) === false || dateUtils.validateBeginnBeforeEnd(cDue, vars.get("$field.CONTRACTEND")) === false) {
+if (DateUtils.validateBeginnBeforeEnd(vars.get("$field.CONTRACTSTART"), cDue) === false || DateUtils.validateBeginnBeforeEnd(cDue, vars.get("$field.CONTRACTEND")) === false) {
     result.string(translate.text("The next due date must be after the start of the contract and before the expiry of the contract!"));
 }
diff --git a/entity/Contract_entity/entityfields/contractend/onValidation.js b/entity/Contract_entity/entityfields/contractend/onValidation.js
index 84b84bf607a..c2b570b7577 100644
--- a/entity/Contract_entity/entityfields/contractend/onValidation.js
+++ b/entity/Contract_entity/entityfields/contractend/onValidation.js
@@ -4,9 +4,8 @@ import("Date_lib");
 import("Util_lib");
 import("Entity_lib");
 
-var dateUtils = new DateUtils();
 var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.CONTRACTEND"));
 var cDue = vars.get("$field.CONTRACTDUE");
 
-if (dateUtils.validateBeginnBeforeEnd(vars.get("$field.CONTRACTSTART"), cEnd) === false)
-    result.string(dateUtils.getValidationFailString());
\ No newline at end of file
+if (DateUtils.validateBeginnBeforeEnd(vars.get("$field.CONTRACTSTART"), cEnd) === false)
+    result.string(DateUtils.getValidationFailString());
\ No newline at end of file
diff --git a/entity/Contract_entity/entityfields/contractstart/onValidation.js b/entity/Contract_entity/entityfields/contractstart/onValidation.js
index 0a0a26c89ee..f7e82b3fd8a 100644
--- a/entity/Contract_entity/entityfields/contractstart/onValidation.js
+++ b/entity/Contract_entity/entityfields/contractstart/onValidation.js
@@ -5,9 +5,8 @@ import("Date_lib");
 import("Util_lib");
 import("Entity_lib");
 
-var dateUtils = new DateUtils();
 var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.CONTRACTSTART"));
 var cDue = vars.get("$field.CONTRACTDUE");
 
-if (dateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.CONTRACTEND")) === false)
-    result.string(dateUtils.getValidationFailString());
\ No newline at end of file
+if (DateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.CONTRACTEND")) === false)
+    result.string(DateUtils.getValidationFailString());
\ No newline at end of file
diff --git a/entity/Offer_entity/entityfields/offerdate/valueProcess.js b/entity/Offer_entity/entityfields/offerdate/valueProcess.js
index af2c1f09cc6..aeddd594f71 100644
--- a/entity/Offer_entity/entityfields/offerdate/valueProcess.js
+++ b/entity/Offer_entity/entityfields/offerdate/valueProcess.js
@@ -5,7 +5,6 @@ import("Date_lib");
 
 if(vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "")
 {
-    var DateUtils = new DateUtils();
     result.string(DateUtils.getTodayUTC());
 }
 else
diff --git a/entity/Productprice_entity/entityfields/valid_from/onValidation.js b/entity/Productprice_entity/entityfields/valid_from/onValidation.js
index 636c0d09237..5ebbf1a7dcc 100644
--- a/entity/Productprice_entity/entityfields/valid_from/onValidation.js
+++ b/entity/Productprice_entity/entityfields/valid_from/onValidation.js
@@ -4,8 +4,7 @@ import("Date_lib");
 import("Util_lib");
 import("Entity_lib");
 
-var dateUtils = new DateUtils();
 var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.VALID_FROM"));
 
-if (dateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.VALID_TO")) === false)
-    result.string(dateUtils.getValidationFailString());
\ No newline at end of file
+if (DateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.VALID_TO")) === false)
+    result.string(DateUtils.getValidationFailString());
\ No newline at end of file
diff --git a/entity/Productprice_entity/entityfields/valid_to/onValidation.js b/entity/Productprice_entity/entityfields/valid_to/onValidation.js
index befc9ac5107..3ada2dd1e76 100644
--- a/entity/Productprice_entity/entityfields/valid_to/onValidation.js
+++ b/entity/Productprice_entity/entityfields/valid_to/onValidation.js
@@ -4,8 +4,7 @@ import("Date_lib");
 import("Util_lib");
 import("Entity_lib");
 
-var dateUtils = new DateUtils();
 var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.VALID_TO"));
 
-if (dateUtils.validateBeginnBeforeEnd(vars.get("$field.VALID_FROM"), cEnd) === false)
-    result.string(dateUtils.getValidationFailString());
\ No newline at end of file
+if (DateUtils.validateBeginnBeforeEnd(vars.get("$field.VALID_FROM"), cEnd) === false)
+    result.string(DateUtils.getValidationFailString());
\ No newline at end of file
diff --git a/entity/Salesproject_entity/entityfields/enddate/valueProcess.js b/entity/Salesproject_entity/entityfields/enddate/valueProcess.js
index b27871853b6..857933a9839 100644
--- a/entity/Salesproject_entity/entityfields/enddate/valueProcess.js
+++ b/entity/Salesproject_entity/entityfields/enddate/valueProcess.js
@@ -5,7 +5,6 @@ import("Date_lib");
 
 if(vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "")
 {
-    var DateUtils = new DateUtils();
     result.string(DateUtils.getDateIncrementedByYears(DateUtils.getTodayUTC(), 1));
 }
 else
diff --git a/entity/Salesproject_entity/entityfields/startdate/valueProcess.js b/entity/Salesproject_entity/entityfields/startdate/valueProcess.js
index af2c1f09cc6..aeddd594f71 100644
--- a/entity/Salesproject_entity/entityfields/startdate/valueProcess.js
+++ b/entity/Salesproject_entity/entityfields/startdate/valueProcess.js
@@ -5,7 +5,6 @@ import("Date_lib");
 
 if(vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "")
 {
-    var DateUtils = new DateUtils();
     result.string(DateUtils.getTodayUTC());
 }
 else
diff --git a/process/Date_lib/process.js b/process/Date_lib/process.js
index 18a8c5d75a3..b91e9b129d5 100644
--- a/process/Date_lib/process.js
+++ b/process/Date_lib/process.js
@@ -5,45 +5,44 @@ import("system.datetime");
  * provides methods for interactions with dates
  */
 function DateUtils(){
-    
-    var that = this;
-    /**
-     * Validates two date inputs (beginning should always be before the end!)
-     * 
-     * @param pStart {Number}
-     * @param pEnd {Number}
-     * 
-     * @result {Boolean|null} Boolean if it was able to check smth or null if the input values were not valid
-     */
-    this.validateBeginnBeforeEnd = function(pStart, pEnd) {
-        if (pStart == "" || pStart == null || pEnd == "" || pEnd == null) return null;
-        return pStart <= pEnd;
-    }
-    
-    this.getValidationFailString = function(){
-        return translate.text("The expiry date must be after the start date!");
-    }
-    
-    /**
-     * Delivers the current date at midnight in UTC
-     * 
-     * @result {Number} 
-     */
-    this.getTodayUTC = function(){
-        return datetime.today("UTC");
-    }
-    
-    /**
-     * Delivers the passed date incremented by passed years
-     * 
-     * @param pDate {Number}
-     * @param pYears {Number}
-     * 
-     * @result {Number} date incremented by years
-     */
-    this.getDateIncrementedByYears = function(pDate, pYears){
-        var dateObj = new Date(pDate);
-        
-        return dateObj.setFullYear(dateObj.getFullYear() + pYears);
-    }
+}
+
+/**
+ * Validates two date inputs (beginning should always be before the end!)
+ * 
+ * @param pStart {Number}
+ * @param pEnd {Number}
+ * 
+ * @result {Boolean|null} Boolean if it was able to check smth or null if the input values were not valid
+ */
+DateUtils.validateBeginnBeforeEnd = function(pStart, pEnd) {
+    if (pStart == "" || pStart == null || pEnd == "" || pEnd == null) return null;
+    return pStart <= pEnd;
+}
+
+DateUtils.getValidationFailString = function(){
+    return translate.text("The expiry date must be after the start date!");
+}
+
+/**
+ * Delivers the current date at midnight in UTC
+ * 
+ * @result {Number} 
+ */
+DateUtils.getTodayUTC = function(){
+    return datetime.today("UTC");
+}
+
+/**
+ * Delivers the passed date incremented by passed years
+ * 
+ * @param pDate {Number}
+ * @param pYears {Number}
+ * 
+ * @result {Number} date incremented by years
+ */
+DateUtils.getDateIncrementedByYears = function(pDate, pYears){
+    var dateObj = new Date(pDate);
+
+    return dateObj.setFullYear(dateObj.getFullYear() + pYears);
 }
\ No newline at end of file
diff --git a/process/Neon_lib/process.js b/process/Neon_lib/process.js
index b99bba716f9..441ffa8b7d4 100644
--- a/process/Neon_lib/process.js
+++ b/process/Neon_lib/process.js
@@ -269,8 +269,7 @@ CopyModuleUtils.copyModule = function(pInputMapping)
                 case "OFFER":
                 {
                     //andere Values setzen
-                    var dtUtils = new DateUtils();
-                    ModuleRowMapping.ColumnMapping["OFFERDATE"].newValue = dtUtils.getTodayUTC();
+                    ModuleRowMapping.ColumnMapping["OFFERDATE"].newValue = DateUtils.getTodayUTC();
                 }
                 break;
                 case "OFFERITEM":
-- 
GitLab