From cd550315df9865e9e977c82cafbd50a342705807 Mon Sep 17 00:00:00 2001 From: Arman Date: Tue, 9 Apr 2024 15:34:12 +0200 Subject: [PATCH] fix: retry payment modal No method selected when the organization paymentMethod belongs to someone else --- .../billing/retryPaymentModal.svelte | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/routes/console/organization-[organization]/billing/retryPaymentModal.svelte b/src/routes/console/organization-[organization]/billing/retryPaymentModal.svelte index e0f034029..06dde940f 100644 --- a/src/routes/console/organization-[organization]/billing/retryPaymentModal.svelte +++ b/src/routes/console/organization-[organization]/billing/retryPaymentModal.svelte @@ -30,8 +30,21 @@ let paymentMethodId: string; let setAsDefault = false; - onMount(() => { - paymentMethodId = $organization.paymentMethodId; + onMount(async () => { + if (!$organization.paymentMethodId && !$organization.backupPaymentMethodId) { + paymentMethodId = $paymentMethods?.total ? $paymentMethods.paymentMethods[0].$id : null; + } else { + paymentMethodId = $organization.paymentMethodId + ? $organization.paymentMethodId + : $organization.backupPaymentMethodId; + // If the selected payment method does not belong to the current user, select the first one. + if ( + $paymentMethods?.total && + !$paymentMethods.paymentMethods.some((method) => method.$id === paymentMethodId) + ) { + paymentMethodId = $paymentMethods.paymentMethods[0].$id; + } + } }); async function handleSubmit() {