diff --git a/frontend/src/lib/components/account/EditRequestModal.svelte b/frontend/src/lib/components/account/EditRequestModal.svelte index 09c82f8..56e0b14 100644 --- a/frontend/src/lib/components/account/EditRequestModal.svelte +++ b/frontend/src/lib/components/account/EditRequestModal.svelte @@ -129,11 +129,18 @@ editMode === 'time' ? bookingTotalDuration : selectedServicesDuration ); + const servicesChanged = $derived( + (booking.services || []).length !== selectedServices.length || + (booking.services || []).some( + (bs) => !selectedServices.some((ss) => ss.id === bs.service_id) + ) + ); + const canSubmit = $derived( submitting === false && ((editMode === 'time' && !!newDate && newTime.length >= 4) || - (editMode === 'services' && selectedServices.length > 0) || - (editMode === 'both-time' && !!newDate && newTime.length >= 4)) + (editMode === 'services' && selectedServices.length > 0 && servicesChanged) || + (editMode === 'both-time' && !!newDate && newTime.length >= 4 && servicesChanged)) ); const notesChanged = $derived(notes.trim() !== originalNotes.trim()); @@ -1277,14 +1284,14 @@ {:else if editMode === 'both-time'} diff --git a/frontend/src/lib/components/account/UserBookingModal.svelte b/frontend/src/lib/components/account/UserBookingModal.svelte index 4d798a5..f65fe7c 100644 --- a/frontend/src/lib/components/account/UserBookingModal.svelte +++ b/frontend/src/lib/components/account/UserBookingModal.svelte @@ -277,6 +277,13 @@ ${hasVAT ? `
| Total Amount | \u00a3${selectedBooking.total_amount.toFixed(2)} |
| Payments Made | \u2212\u00a3${grossTotal.toFixed(2)} |
| Discounts Applied | \u2212\u00a3${discountPayments.reduce((s, d) => s + Math.abs(d.amount), 0).toFixed(2)} |
| Amount Due | \u00a3${Math.max(0, selectedBooking.total_amount - grossTotal - discountPayments.reduce((s, d) => s + Math.abs(d.amount), 0)).toFixed(2)} |
VAT is included at ${biz?.default_vat_rate ?? 20}% where shown above.
` : 'VAT is not applicable for this transaction.
'}