From 137fff1844a544c4be748fd5fc0b394517625202 Mon Sep 17 00:00:00 2001
From: Johannes Hoermann <j.hoermann@adito.de>
Date: Mon, 25 Feb 2019 11:06:48 +0100
Subject: [PATCH] [Projekt: Entwicklung - Neon][TicketNr.: 1035102][Darstellung
 der Zeiterfassung in Stunden]

---
 .../Timetracking_entity/Timetracking_entity.aod   |  3 ++-
 .../entityfields/minutes/displayValueProcess.js   |  5 +++++
 .../_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod   |  9 +++++++++
 language/_____LANGUAGE_de/_____LANGUAGE_de.aod    |  7 +++++++
 language/_____LANGUAGE_en/_____LANGUAGE_en.aod    |  9 +++++++++
 process/Timetracking_lib/process.js               | 15 +++++++++++++++
 6 files changed, 47 insertions(+), 1 deletion(-)
 create mode 100644 entity/Timetracking_entity/entityfields/minutes/displayValueProcess.js

diff --git a/entity/Timetracking_entity/Timetracking_entity.aod b/entity/Timetracking_entity/Timetracking_entity.aod
index 4bdee59f79..688c47bd92 100644
--- a/entity/Timetracking_entity/Timetracking_entity.aod
+++ b/entity/Timetracking_entity/Timetracking_entity.aod
@@ -15,8 +15,9 @@
     </entityField>
     <entityField>
       <name>MINUTES</name>
-      <title>Minutes</title>
+      <title>Time</title>
       <mandatory v="true" />
+      <displayValueProcess>%aditoprj%/entity/Timetracking_entity/entityfields/minutes/displayValueProcess.js</displayValueProcess>
     </entityField>
     <entityField>
       <name>OBJECT_ID</name>
diff --git a/entity/Timetracking_entity/entityfields/minutes/displayValueProcess.js b/entity/Timetracking_entity/entityfields/minutes/displayValueProcess.js
new file mode 100644
index 0000000000..326c2a9f30
--- /dev/null
+++ b/entity/Timetracking_entity/entityfields/minutes/displayValueProcess.js
@@ -0,0 +1,5 @@
+import("system.vars");
+import("system.result");
+import("Timetracking_lib");
+
+result.string(Timetracking.minutesToReadableHour(parseInt(vars.getString("$field.MINUTES"))));
\ No newline at end of file
diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
index 7b3e2ab613..8caf6fac2a 100644
--- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
+++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
@@ -2364,6 +2364,15 @@
     <entry>
       <key>Touchpoint</key>
     </entry>
+    <entry>
+      <key>Combobox Value</key>
+    </entry>
+    <entry>
+      <key>relations</key>
+    </entry>
+    <entry>
+      <key>Time</key>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
   <sqlModels>
diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
index 8c68c088ff..0969f6e7d8 100644
--- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
+++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
@@ -2734,6 +2734,13 @@
       <key>Print Offer</key>
       <value>Angebot drucken</value>
     </entry>
+    <entry>
+      <key>relations</key>
+    </entry>
+    <entry>
+      <key>Time</key>
+      <value>Zeit</value>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
 </language>
diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
index 7a1809e94d..fd662446d3 100644
--- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
+++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
@@ -2388,6 +2388,15 @@
     <entry>
       <key>Days inactive</key>
     </entry>
+    <entry>
+      <key>Combobox Value</key>
+    </entry>
+    <entry>
+      <key>relations</key>
+    </entry>
+    <entry>
+      <key>Time</key>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
 </language>
diff --git a/process/Timetracking_lib/process.js b/process/Timetracking_lib/process.js
index 664d6574be..d2128cd195 100644
--- a/process/Timetracking_lib/process.js
+++ b/process/Timetracking_lib/process.js
@@ -44,4 +44,19 @@ Timetracking.createNewTimeTracking = function (pRowId)
     };
     
     neon.openContext("Timetracking", null, null, neon.OPERATINGSTATE_NEW, params);
+}
+
+/*
+ * converts minutes tho hours and minuets. e.g. 105 to 1:45
+ * 
+ * @param {integer} pMinutes req 
+ * 
+ * @return {String} Hours:Minutes
+ */
+Timetracking.minutesToReadableHour = function(pMinutes) 
+{
+    var timeHour = parseInt(pMinutes / 60);
+    var minutes = parseInt(pMinutes % 60);
+    
+    return "" + timeHour + ":" + ((minutes <= 9) ? "0" + minutes : minutes);
 }
\ No newline at end of file
-- 
GitLab