From c6d3a98b3d0be136353ec183a2a43fa6f17dfc81 Mon Sep 17 00:00:00 2001 From: Daniel Spitzer Date: Wed, 5 Feb 2025 20:11:01 +0100 Subject: [PATCH] =?UTF-8?q?Kalender=20Bugfix=20=20*=20Wenn=20bei=20einem?= =?UTF-8?q?=20Termin=20auf=20info=20senden=20geklickt=20wurde=20und=20die?= =?UTF-8?q?=20Kundeninformation=20leer=20war=20macht=20er=20ein=20NullFeld?= =?UTF-8?q?=20f=C3=BCr=20die=20Textinfo,=20das=20blockierte=20das=20JS=20b?= =?UTF-8?q?eim=20=C3=B6ffen=20->=20ist=20behoben?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/Calendar/CalendarController.php | 50 +++++++++++++++++---- public/js/pages/Calendar/View.js | 9 ++-- 2 files changed, 48 insertions(+), 11 deletions(-) diff --git a/application/Calendar/CalendarController.php b/application/Calendar/CalendarController.php index fae309a24..f15cb4f2c 100644 --- a/application/Calendar/CalendarController.php +++ b/application/Calendar/CalendarController.php @@ -70,10 +70,27 @@ class CalendarController extends mfBaseController $email->send(); } else if ($r->customer_info_type == 2) { $sms = new SmsNotification(); - $body = "Xinon Terminbestätigung:" . PHP_EOL . $r->customer_info_text; + $customerText = trim($r->customer_info_text); + $body = "Xinon Terminbestätigung:" . PHP_EOL . $customerText; $sms->setBody($body); - $sms->setRecipient($r->customer_info_type_text); - $sms->send(); + $customerNumber = trim($r->customer_info_type_text); + $customerNumber = str_replace(" ", "", $customerNumber); + $customerNumber = str_replace("(", "", $customerNumber); + $customerNumber = str_replace(")", "", $customerNumber); + $customerNumber = str_replace("-", "", $customerNumber); + $customerNumber = str_replace("/", "", $customerNumber); + $customerNumber = str_replace(".", "", $customerNumber); + $customerNumber = str_replace(",", "", $customerNumber); + $customerNumber = str_replace(";", "", $customerNumber); + $customerNumber = str_replace(":", "", $customerNumber); + + if (preg_match('/^0/', $customerNumber)) { + $customerNumber = "+43" . substr($customerNumber, 1); + } + $sms->setRecipient($customerNumber); + if (!empty($customerNumber) && !empty($customerText)) { + $sms->send(); + } } } die(); @@ -104,10 +121,26 @@ class CalendarController extends mfBaseController $email->send(); } else if ($r->customer_info_type == 2) { $sms = new SmsNotification(); - $body = "Xinon Terminbestätigung:" . PHP_EOL . $r->customer_info_text; + $customerText = trim($r->customer_info_text); + $body = "Xinon Terminbestätigung:" . PHP_EOL . $customerText; $sms->setBody($body); - $sms->setRecipient($r->customer_info_type_text); - $sms->send(); + $customerNumber = trim($r->customer_info_type_text); + $customerNumber = str_replace(" ", "", $customerNumber); + $customerNumber = str_replace("(", "", $customerNumber); + $customerNumber = str_replace(")", "", $customerNumber); + $customerNumber = str_replace("-", "", $customerNumber); + $customerNumber = str_replace("/", "", $customerNumber); + $customerNumber = str_replace(".", "", $customerNumber); + $customerNumber = str_replace(",", "", $customerNumber); + $customerNumber = str_replace(";", "", $customerNumber); + $customerNumber = str_replace(":", "", $customerNumber); + if (preg_match('/^0/', $customerNumber)) { + $customerNumber = "+43" . substr($customerNumber, 1); + } + $sms->setRecipient($customerNumber); + if (!empty($customerNumber) && !empty($customerText)) { + $sms->send(); + } } } die(); @@ -327,17 +360,18 @@ class CalendarController extends mfBaseController echo trim($json); die(); } + private function getTicket($r) { $project = new XinonProject(); - $data=$project->searchSupportTickets($r->term); + $data = $project->searchSupportTickets($r->term); foreach ($data as $key => $value) { $rows[] = array( 'id' => $value['id'], - 'text' => 'Ticket: '.$value['id']." ".$value['subject'], + 'text' => 'Ticket: ' . $value['id'] . " " . $value['subject'], 'subject' => $value['subject'], 'mail' => $value['customField5'], 'mobilenumber' => $value['customField4'], diff --git a/public/js/pages/Calendar/View.js b/public/js/pages/Calendar/View.js index 2d32dc2c7..5df62fe6d 100644 --- a/public/js/pages/Calendar/View.js +++ b/public/js/pages/Calendar/View.js @@ -454,8 +454,12 @@ document.addEventListener('DOMContentLoaded', function () { } else if (obj.customer_info_type == 2) { typeText = 'SMS'; } + let customer_info_text = ""; + if (obj.customer_info_text) { + customer_info_text = obj.customer_info_text.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1
$2'); + } let title = `
Letzte gesendete Info (` + typeText + `):
-
` + obj.customer_info_text.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1
$2') + `
+
` + customer_info_text + `
gesendet an: ` + obj.customer_info_type_text + `
gesendet von: ` + obj.sendby + `
gesendet am: ` + germanDateTime + `
@@ -1706,8 +1710,7 @@ $(document).ready(function () { } } }); - } - else if ($(this).val() == "5") { + } else if ($(this).val() == "5") { $('.customer-div').hide(); $('.ticket-div').show(); $('#ticket').select2({