From 5361f7deccc35a7973aeec49a01072bb3606099b Mon Sep 17 00:00:00 2001
From: Daniel Lennartz <d.lennartz@saupe-telemarketing.de>
Date: Thu, 10 Oct 2024 19:19:59 +0000
Subject: [PATCH 1/5] Update 15 files

- /i18n/login/de_de.json
- /i18n/home/de_de.json
- /i18n/Services/de_de.json
- /i18n/Quotes/de_de.json
- /i18n/Assets/de_de.json
- /i18n/Documents/de_de.json
- /i18n/Faq/de_de.json
- /i18n/HelpDesk/de_de.json
- /i18n/Invoice/de_de.json
- /i18n/Products/de_de.json
- /i18n/Profile/de_de.json
- /i18n/Project/de_de.json
- /i18n/ProjectMilestone/de_de.json
- /i18n/ProjectTask/de_de.json
- /i18n/ServiceContracts/de_de.json
---
 i18n/Assets/de_de.json           |  2 +-
 i18n/Documents/de_de.json        | 12 +++----
 i18n/Faq/de_de.json              |  2 +-
 i18n/HelpDesk/de_de.json         | 14 ++++----
 i18n/Invoice/de_de.json          |  2 +-
 i18n/Products/de_de.json         |  4 +--
 i18n/Profile/de_de.json          |  6 ++--
 i18n/Project/de_de.json          | 10 +++---
 i18n/ProjectMilestone/de_de.json |  6 ++--
 i18n/ProjectTask/de_de.json      |  2 +-
 i18n/Quotes/de_de.json           |  4 +--
 i18n/ServiceContracts/de_de.json |  4 +--
 i18n/Services/de_de.json         |  4 +--
 i18n/home/de_de.json             | 60 ++++++++++++++++----------------
 i18n/login/de_de.json            |  6 ++--
 15 files changed, 69 insertions(+), 69 deletions(-)

diff --git a/i18n/Assets/de_de.json b/i18n/Assets/de_de.json
index 35d12c1..c347610 100644
--- a/i18n/Assets/de_de.json
+++ b/i18n/Assets/de_de.json
@@ -2,6 +2,6 @@
   "Mine":"Meine",
   "All":"Alle",
   "_start Related tab views":"keys",
-  "History":"Aktuelles",
+  "History":"Historie",
   "ModComments":"Kommentare"
 }
diff --git a/i18n/Documents/de_de.json b/i18n/Documents/de_de.json
index 0af1de3..fff3a9a 100644
--- a/i18n/Documents/de_de.json
+++ b/i18n/Documents/de_de.json
@@ -1,15 +1,15 @@
 {
     "_start for header bars": "_start für Kopfleisten",
-    "Mine": "Mine",
+    "Mine": "Meine",
     "All": "Alle",
     "Add Document": "Dokument hinzufügen",
     "_start for detail": "_start zum Detail",
-    "History": "Aktuelles",
+    "History": "Historie",
     "undefined": "nicht definiert",
     "Save":"Speichern",
-    "Cancel":"Rückgängig Machen",
+    "Cancel":"Abbrechen",
     "Add New Document":"Neues Dokument hinzufügen",
-    "Maximum size for file upload is 25 MB":"Maximale Größe für Datei-Upload ist 25 MB",
-    "Browse":"blättern",
-    "File size uploaded is greater than 25 MB":"Dateigröße für hochgeladene größer als 25 MB"
+    "Maximum size for file upload is 25 MB":"Die maximale Größe für das Hochladen von Dateien beträgt 25 MB",
+    "Browse":"Durchsuchen",
+    "File size uploaded is greater than 25 MB":"Die Größe der hochgeladenen Datei ist größer als 25 MB"
 }
diff --git a/i18n/Faq/de_de.json b/i18n/Faq/de_de.json
index d230142..8287d43 100644
--- a/i18n/Faq/de_de.json
+++ b/i18n/Faq/de_de.json
@@ -1,5 +1,5 @@
 {
-    "Search": "Hier suchen",
+    "Search": "Suchen",
     "Top Questions": "Die meistgestellten Fragen",
     "Categories": "Kategorien",
     "ModComments":"Kommentare"
diff --git a/i18n/HelpDesk/de_de.json b/i18n/HelpDesk/de_de.json
index 4291d83..0922eef 100644
--- a/i18n/HelpDesk/de_de.json
+++ b/i18n/HelpDesk/de_de.json
@@ -1,16 +1,16 @@
 {
-  "New Ticket":"Neu Ticket",
-  "History":"Aktuelles",
+  "New Ticket":"Neues Ticket",
+  "History":"Historie",
   "ModComments":"Kommentare",
-  "Mine":"Mein",
+  "Mine":"Meine",
   "All":"Alle",
-  "Close Ticket":"Schließen Ticket",
+  "Close Ticket":"Ticket schließen",
   "Save":"Speichern",
-  "Cancel":"Rückgängig Machen",
+  "Cancel":"Abbrechen",
   "Title":"Titel",
   "Add New Ticket":"Neues Ticket hinzufügen",
-  "Mark as closed":"Als geschlossen",
-  "Attach document to this ticket":"Bringen Dokument an diesem Ticket",
+  "Mark as closed":"Als abgeschlossen markieren",
+  "Attach document to this ticket":"Dokument an dieses Ticket anhängen",
   "Edit Ticket":"Ticket bearbeiten",
   "All Tickets":"Alle Tickets"
 }
diff --git a/i18n/Invoice/de_de.json b/i18n/Invoice/de_de.json
index 60b31c3..308e26c 100644
--- a/i18n/Invoice/de_de.json
+++ b/i18n/Invoice/de_de.json
@@ -2,6 +2,6 @@
   "Mine":"Mein",
   "All":"Alle",
   "_start for Related tab views":"keys",
-  "History":"Aktuelles",
+  "History":"Historie",
   "ModComments":"Kommentare"
 }
diff --git a/i18n/Products/de_de.json b/i18n/Products/de_de.json
index 273ecf4..4359258 100644
--- a/i18n/Products/de_de.json
+++ b/i18n/Products/de_de.json
@@ -1,7 +1,7 @@
 {
-    "Mine": "Mine",
+    "Mine": "Meine",
     "All": "Alle",
     "_start for Related tab views": "Schlüssel",
-    "History": "Aktuelles",
+    "History": "Historie",
     "ModComments": "Kommentare"
 }
diff --git a/i18n/Profile/de_de.json b/i18n/Profile/de_de.json
index 0bda27b..11af0ed 100644
--- a/i18n/Profile/de_de.json
+++ b/i18n/Profile/de_de.json
@@ -3,11 +3,11 @@
     "Primary Email": "Primäre E-Mail",
     "Secondary Email": "Sekundäre E-Mail",
     "Mobile Phone": "Handy",
-    "Office Phone": "Office Phone",
+    "Office Phone": "Büro Telefon",
     "_start for CompanyInfo": "Schlüssel",
     "Website": "Webseite",
     "Email": "E-Mail",
     "Phone": "Telefon",
-    "Personal Details":"Persönliche Einzelheiten",
-    "Company Details":"Unternehmensprofil"
+    "Personal Details":"Persönliche Details",
+    "Company Details":"Unternehmen Details"
 }
diff --git a/i18n/Project/de_de.json b/i18n/Project/de_de.json
index 55c0506..a0ee46e 100644
--- a/i18n/Project/de_de.json
+++ b/i18n/Project/de_de.json
@@ -1,12 +1,12 @@
 {
-    "Mine": "Mine",
+    "Mine": "Meine",
     "All": "Alle",
     "_start for Related tabs views": "_start nach Ähnliche Registerkarten Ansichten",
-    "History": "Aktuelles",
+    "History": "Historie",
     "ModComments": "Kommentare",
     "projecttask": "Projektaufgaben",
-    "projectmilestone": "Projekt Milestone",
-    "Documents": "Unterlagen",
+    "projectmilestone": "Projekt Meilenstein",
+    "Documents": "Dokumente",
     "undefined": "nicht definiert",
-    "Attach document to this project":"Bringen Dokument zu diesem Projekt"
+    "Attach document to this project":"Dokument an dieses Projekt anhängen"
 }
diff --git a/i18n/ProjectMilestone/de_de.json b/i18n/ProjectMilestone/de_de.json
index a9e24c1..d600b33 100644
--- a/i18n/ProjectMilestone/de_de.json
+++ b/i18n/ProjectMilestone/de_de.json
@@ -1,6 +1,6 @@
 {
     "_start for Related tab views": "_start para vistas de fichas Relacionados",
-    "History": "Actualizaciones",
-    "ModComments": "Comentarios",
-    "undefined": "indefinido"
+    "History": "Historie",
+    "ModComments": "Kommentare",
+    "undefined": "nicht definiert"
 }
diff --git a/i18n/ProjectTask/de_de.json b/i18n/ProjectTask/de_de.json
index ac55c5b..ae62d95 100644
--- a/i18n/ProjectTask/de_de.json
+++ b/i18n/ProjectTask/de_de.json
@@ -1,6 +1,6 @@
 {
     "_start for Related tabs views": "_start nach Ähnliche Registerkarten Ansichten",
-    "History": "Aktuelles",
+    "History": "Historie",
     "ModComments": "Kommentare",
     "undefined": "nicht definiert"
 }
diff --git a/i18n/Quotes/de_de.json b/i18n/Quotes/de_de.json
index 50d4e66..27447f8 100644
--- a/i18n/Quotes/de_de.json
+++ b/i18n/Quotes/de_de.json
@@ -1,8 +1,8 @@
 {
     "_start for header bars": "_start für Kopfleisten",
-    "Mine": "Mine",
+    "Mine": "Meine",
     "All": "Alle",
     "_start for detail view": "_start zur Detailansicht",
-    "Updates": "Aktuelles",
+    "Updates": "Historie",
     "Comments": "Kommentare"
 }
diff --git a/i18n/ServiceContracts/de_de.json b/i18n/ServiceContracts/de_de.json
index 0185176..c31beaf 100644
--- a/i18n/ServiceContracts/de_de.json
+++ b/i18n/ServiceContracts/de_de.json
@@ -1,7 +1,7 @@
 {
-    "Mine": "Mine",
+    "Mine": "Meine",
     "All": "Alle",
     "_start for detail": "_start zum Detail",
-    "History": "Aktuelles",
+    "History": "Historie",
     "undefined": "nicht definiert"
 }
diff --git a/i18n/Services/de_de.json b/i18n/Services/de_de.json
index 0185176..c31beaf 100644
--- a/i18n/Services/de_de.json
+++ b/i18n/Services/de_de.json
@@ -1,7 +1,7 @@
 {
-    "Mine": "Mine",
+    "Mine": "Meine",
     "All": "Alle",
     "_start for detail": "_start zum Detail",
-    "History": "Aktuelles",
+    "History": "Historie",
     "undefined": "nicht definiert"
 }
diff --git a/i18n/home/de_de.json b/i18n/home/de_de.json
index db663fb..b665b31 100644
--- a/i18n/home/de_de.json
+++ b/i18n/home/de_de.json
@@ -1,62 +1,62 @@
 {
-	"Home": "Zuhause",
+	"Home": "Start",
 	"More": "Mehr",
 	"more": "mehr",
 	"Profile": "Profil",
-	"Change Password": "Passwort Ändern",
-	"Logout": "Logout",
+	"Change Password": "Passwort ändern",
+	"Logout": "Abmelden",
 	"_start for Home view": "keys",
 	"Welcome to": "Willkommen bei",
 	"Portal": "Kundenportal",
 	"LBL_ADD_DOCUMENT": "Anhang hinzufügen",
-	"LBL_CREATE_TICKET": "Neu Ticket",
-	"LBL_OPEN_TICKETS": "offenen Tickets",
+	"LBL_CREATE_TICKET": "Neues Ticket",
+	"LBL_OPEN_TICKETS": "Offenen Tickets",
 	"What would you like to do ?": "Was möchten Sie tun?",
 	"_start for announcement": "keys",
-	"Your support ends on": "Ihre Unterstützung endet am",
+	"Your support ends on": "Ihr Support endet am",
 	"_start for charts": "keys",
-	"OpenTicketsByPriority": "Offene Tickets Nach Priorität",
+	"OpenTicketsByPriority": "Offene Tickets nach Priorität",
 	"TicketsClosureTimeByPriority": "Tickets Closure-Time Nach Priorität",
 	"undefined": "nicht definiert",
 	"_start for widgets": "_start für Widgets",
 	"Recent": "Kürzlich",
 	"Current Password": "Aktuelles Passwort",
-	"New Password": "Neue Passwort",
-	"Confirm Password": "Passwort Bestätigen",
+	"New Password": "Neues Passwort",
+	"Confirm Password": "Passwort bestätigen",
 	"Save": "Speichern",
-	"Cancel": "Rückgängig Machen",
-	"No more updates": "Keine Updates mehr",
+	"Cancel": "Abbrechen",
+	"No more updates": "Keine weiteren Updates",
 	"No updates": "Keine Updates",
-	"No more comments": "Keine Kommentare mehr",
+	"No more comments": "Keine weiteren Kommentare",
 	"No comments": "Keine Kommentare",
-	"No more documents": "Keine weiteren Datensätze",
-	"No documents": "Keine Rekorde",
-	"No more FAQs": "Keine weiteren Datensätze",
-	"No FAQs": "Keine Rekorde",
+	"No more documents": "Keine weiteren Dokumente",
+	"No documents": "Keine Dokumente",
+	"No more FAQs": "Keine weiteren FAQs",
+	"No FAQs": "Keine FAQs",
 	"No Tasks": "Keine Aufgaben",
 	"No more Tasks": "Keine weitere Aufgaben",
 	"No Milestones": "Keine Meilensteine",
 	"No more Milestones": "Keine weitere Meilensteine",
-	"changed from": "aus geändert",
-	"changed to": "geändert",
+	"changed from": "geändert von",
+	"changed to": "geändert zu",
 	"created": "erstellt",
-	"to": "bis zur",
+	"to": "bis",
 	"deleted": "gelöscht",
-	"Search": "Hier suchen",
-	"Type 3 characters": "Typ 3 Zeichen",
+	"Search": "Suchen",
+	"Type 3 characters": "Mind. 3 Zeichen eingeben",
 	"No records found.": "Keine Datensätze gefunden.",
-	"Submit": "Einreichen",
-	"Add your comment here": "Fügen Sie Ihren Kommentar hier",
-	"Export": "Ausfuhr",
-	"Please enter positive numbers.": "Bitte geben Sie positive Zahlen.",
-	"Please enter a valid Url.": "Bitte geben Sie eine gültige URL.",
-	"Please enter a integer value.": "Bitte geben Sie einen ganzzahligen Wert.",
-	"Please enter a valid E-mail address.": "Bitte geben Sie eine gültige E-Mail-Adresse ein.",
-	"Please enter integer value.": "Bitte geben Sie Integer-Wert.",
+	"Submit": "Senden",
+	"Add your comment here": "Fügen Sie hier Ihren Kommentar hinzu",
+	"Export": "Export",
+	"Please enter positive numbers.": "Bitte geben Sie positive Zahlen ein.",
+	"Please enter a valid Url.": "Bitte geben Sie eine gültige Url ein.",
+	"Please enter a integer value.": "Bitte geben Sie einen ganzzahligen Wert ein.",
+	"Please enter a valid E-mail address.": "Bitte geben Sie eine gültige E-Mail Adresse ein.",
+	"Please enter integer value.": "Bitte geben Sie einen ganzzahligen Wert ein.",
 	"Actions": "Aktionen",
 	"Download": "Herunterladen",
 	"No matches found.": "Keine Treffer gefunden.",
 	"Edit": "Bearbeiten",
-	"Accept Quote": "Akzeptieren Angebot",
+	"Accept Quote": "Angebot annehmen",
 	"Portal": "Portal"
 }
diff --git a/i18n/login/de_de.json b/i18n/login/de_de.json
index 64291ad..3c9d4f0 100644
--- a/i18n/login/de_de.json
+++ b/i18n/login/de_de.json
@@ -1,10 +1,10 @@
 {
-    "Email":"E-mail",
+    "Email":"E-Mail",
      "Password":"Passwort",
-     "Please provide your portal credentials":"Bitte geben Sie Ihre Anmeldeinformationen Portal",
+     "Please provide your portal credentials":"Bitte geben Sie Ihre Anmeldedaten für das Portal ein",
      "Sign in":"Anmelden",
      "Language":"Sprache",
      "Forgot password?":"Passwort vergessen?",
      "Forgot Password":"Passwort Vergessen",
-     "Submit":"Einreichen"
+     "Submit":"Senden"
 }
-- 
GitLab


From 1a9941469f7e237c91d2dfef9c83e563210dd6d5 Mon Sep 17 00:00:00 2001
From: Daniel Lennartz <d.lennartz@saupe-telemarketing.de>
Date: Thu, 10 Oct 2024 19:31:01 +0000
Subject: [PATCH 2/5] Update file Portal.php

---
 classes/Vtiger/connectors/Portal.php | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/classes/Vtiger/connectors/Portal.php b/classes/Vtiger/connectors/Portal.php
index 8cb8e3d..085ddf6 100644
--- a/classes/Vtiger/connectors/Portal.php
+++ b/classes/Vtiger/connectors/Portal.php
@@ -63,7 +63,9 @@ class Vtiger_Portal_Connector extends Vtiger_PortalBase_Connector {
 	}
 
 	public function fetchModules() {
-		if (!$language || empty($language)) {
+		if (empty($language)) {
+			$language = Portal_Session::get('language');
+		} elseif ($language == '') {
 			$language = Portal_Session::get('language');
 		}
 
-- 
GitLab


From 3339162cd63ebe8e290c47e2b382db1851792d8e Mon Sep 17 00:00:00 2001
From: Daniel Lennartz <d.lennartz@saupe-telemarketing.de>
Date: Fri, 11 Oct 2024 09:14:20 +0000
Subject: [PATCH 3/5] Update 2 files

- /classes/Vtiger/connectors/Portal.php
- /classes/Portal/apis/Default.php
---
 classes/Portal/apis/Default.php      | 2 +-
 classes/Vtiger/connectors/Portal.php | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/classes/Portal/apis/Default.php b/classes/Portal/apis/Default.php
index 8ec3b85..be913d0 100644
--- a/classes/Portal/apis/Default.php
+++ b/classes/Portal/apis/Default.php
@@ -22,7 +22,7 @@ class Portal_Default_API {
 
 	public function processResponse($module, $language=null) {
 		if (empty($language)) {
-			$language = Portal_Session::get('langauge');
+			$language = Portal_Session::get('language');
 		}
 		$moduleMeta = array();
 		$currentMetaInfo = Portal_Session::get('moduleMeta');
diff --git a/classes/Vtiger/connectors/Portal.php b/classes/Vtiger/connectors/Portal.php
index 085ddf6..5ae08be 100644
--- a/classes/Vtiger/connectors/Portal.php
+++ b/classes/Vtiger/connectors/Portal.php
@@ -82,7 +82,7 @@ class Vtiger_Portal_Connector extends Vtiger_PortalBase_Connector {
 
 		$response = self::api($args);
 
-		if (isset($response['contact_id']) && isset($response['contact_id']) && isset($response['contact_id'])) {
+		if (isset($response['contact_id']) && isset($response['account_id']) && isset($response['user_id'])) {
 			if ($username && $password && $response) {
 				Portal_Session::set('portal_auth', $this->auth);
 				Portal_Session::set('contact_id', $response['contact_id']['value']);
-- 
GitLab


From 424e17b05bc88dfcf27d7b59c706deadff880d6a Mon Sep 17 00:00:00 2001
From: Daniel Lennartz <d.lennartz@saupe-telemarketing.de>
Date: Fri, 11 Oct 2024 09:31:08 +0000
Subject: [PATCH 4/5] Update 2 files

- /i18n/home/de_de.json
- /layouts/default/templates/Portal/Home.tpl
---
 i18n/home/de_de.json                      | 3 ++-
 layouts/default/templates/Portal/Home.tpl | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/i18n/home/de_de.json b/i18n/home/de_de.json
index b665b31..302d51d 100644
--- a/i18n/home/de_de.json
+++ b/i18n/home/de_de.json
@@ -58,5 +58,6 @@
 	"No matches found.": "Keine Treffer gefunden.",
 	"Edit": "Bearbeiten",
 	"Accept Quote": "Angebot annehmen",
-	"Portal": "Portal"
+	"Portal": "Portal",
+	"Documents": "Dokumente"
 }
diff --git a/layouts/default/templates/Portal/Home.tpl b/layouts/default/templates/Portal/Home.tpl
index 3a99fa5..d155c9c 100644
--- a/layouts/default/templates/Portal/Home.tpl
+++ b/layouts/default/templates/Portal/Home.tpl
@@ -79,7 +79,7 @@
                     <div class="support panel-body">
                         <div class="row">
                             <div ng-repeat="(module,actions) in shortcuts" class="col-lg-12 shortcut-done">
-                                <h5>{{module}}</h5>
+                                <h5>{{module | translate}}</h5>
                                 <div class="col-lg-12 shortcut-button"   ng-class-even="'even-button'" ng-repeat="action in actions" >
                                     <button  translate="{{action}}" ng-click="openShortcut(module,action)" class="btn btn-default">{{action}}</button>
                                 </div>
-- 
GitLab


From ef7f95f6ab82848e7afb7957b0ceb8305602614d Mon Sep 17 00:00:00 2001
From: Daniel Lennartz <d.lennartz@saupe-telemarketing.de>
Date: Sat, 12 Oct 2024 11:36:34 +0000
Subject: [PATCH 5/5] Portal.php ersetzen

---
 classes/Vtiger/connectors/Portal.php | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/classes/Vtiger/connectors/Portal.php b/classes/Vtiger/connectors/Portal.php
index 5ae08be..2ae8875 100644
--- a/classes/Vtiger/connectors/Portal.php
+++ b/classes/Vtiger/connectors/Portal.php
@@ -63,12 +63,7 @@ class Vtiger_Portal_Connector extends Vtiger_PortalBase_Connector {
 	}
 
 	public function fetchModules() {
-		if (empty($language)) {
-			$language = Portal_Session::get('language');
-		} elseif ($language == '') {
-			$language = Portal_Session::get('language');
-		}
-
+		$language = Portal_Session::get('language');
 		$username = Portal_Session::get('username');
 		$password = Portal_Session::get('password');
 		$this->auth = array('Authorization' => 'Basic '.base64_encode($username.':'.$password));
@@ -82,7 +77,7 @@ class Vtiger_Portal_Connector extends Vtiger_PortalBase_Connector {
 
 		$response = self::api($args);
 
-		if (isset($response['contact_id']) && isset($response['account_id']) && isset($response['user_id'])) {
+		if (isset($response['contact_id']) && isset($response['contact_id']) && isset($response['contact_id'])) {
 			if ($username && $password && $response) {
 				Portal_Session::set('portal_auth', $this->auth);
 				Portal_Session::set('contact_id', $response['contact_id']['value']);
-- 
GitLab