From 266af6595ef8447dc37a19f9c4ab6e1e2cfb01b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Pocrnji=C4=8D?= Date: Fri, 24 Oct 2025 22:06:57 +0200 Subject: [PATCH] Fixed some things --- app/Services/Sms/SmsService.php | 4 ++-- resources/js/Components/PersonInfoGrid.vue | 26 ++++++++++++++++++++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/app/Services/Sms/SmsService.php b/app/Services/Sms/SmsService.php index 8e69279..da6ed5d 100644 --- a/app/Services/Sms/SmsService.php +++ b/app/Services/Sms/SmsService.php @@ -24,7 +24,7 @@ public function sendRaw(SmsProfile $profile, string $to, string $content, ?SmsSe $log = new SmsLog([ 'uuid' => (string) Str::uuid(), 'profile_id' => $profile->id, - 'to_number' => /*$to*/'', + 'to_number' => $to, 'sender' => $sender?->sname, 'message' => $content, 'status' => 'queued', @@ -36,7 +36,7 @@ public function sendRaw(SmsProfile $profile, string $to, string $content, ?SmsSe to: $to, content: $content, sender: $sender?->sname, - senderPhone: /*$sender?->phone_number*/'', + senderPhone: $sender?->phone_number, countryCode: $countryCode, deliveryReport: $deliveryReport, clientReference: $clientReference, diff --git a/resources/js/Components/PersonInfoGrid.vue b/resources/js/Components/PersonInfoGrid.vue index af876be..8483d45 100644 --- a/resources/js/Components/PersonInfoGrid.vue +++ b/resources/js/Components/PersonInfoGrid.vue @@ -249,6 +249,14 @@ watch(selectedProfileId, () => { if (!ok) selectedSenderId.value = null; }); +// When the available senders list changes, default to the first sender if none selected +watch(sendersForSelectedProfile, (list) => { + if (!Array.isArray(list)) return; + if (!selectedSenderId.value && list.length > 0) { + selectedSenderId.value = list[0].id; + } +}); + watch(selectedTemplateId, () => { if (!selectedTemplateId.value) return; const tpl = (pageSmsTemplates.value || []).find( @@ -259,6 +267,14 @@ watch(selectedTemplateId, () => { } }); +// If templates array changes and none is chosen, pick the first by default +watch(pageSmsTemplates, (list) => { + if (!Array.isArray(list)) return; + if (!selectedTemplateId.value && list.length > 0) { + selectedTemplateId.value = list[0].id; + } +}); + const openSmsDialog = (phone) => { if (!props.enableSms || !props.clientCaseUuid) return; smsTargetPhone.value = phone; @@ -273,7 +289,11 @@ const openSmsDialog = (phone) => { (p) => p.id === selectedProfileId.value ); if (prof && prof.default_sender_id) { - selectedSenderId.value = prof.default_sender_id; + // Use profile default sender if present + const inList = sendersForSelectedProfile.value.find( + (s) => s.id === prof.default_sender_id + ); + selectedSenderId.value = inList ? prof.default_sender_id : null; } else { selectedSenderId.value = null; } @@ -281,7 +301,9 @@ const openSmsDialog = (phone) => { selectedSenderId.value = null; } deliveryReport.value = false; - selectedTemplateId.value = null; + // Default template selection to first available + selectedTemplateId.value = + (pageSmsTemplates.value && pageSmsTemplates.value[0]?.id) || null; }; const closeSmsDialog = () => { showSmsDialog.value = false;