diff --git a/packages/features/ee/payments/components/Payment.tsx b/packages/features/ee/payments/components/Payment.tsx index 92705c3deb..874e795063 100644 --- a/packages/features/ee/payments/components/Payment.tsx +++ b/packages/features/ee/payments/components/Payment.tsx @@ -64,16 +64,19 @@ const getReturnUrl = (props: Props) => { }; const PaymentForm = (props: Props) => { + const { + user: { username }, + } = props; const { t, i18n } = useLocale(); const router = useRouter(); const searchParams = useSearchParams(); const [state, setState] = useState({ status: "idle" }); + const [isCanceling, setIsCanceling] = useState(false); const stripe = useStripe(); const elements = useElements(); const paymentOption = props.payment.paymentOption; const [holdAcknowledged, setHoldAcknowledged] = useState(paymentOption === "HOLD" ? false : true); const bookingSuccessRedirect = useBookingSuccessRedirect(); - useEffect(() => { elements?.update({ locale: i18n.language as StripeElementLocale }); }, [elements, i18n.language]); @@ -134,6 +137,8 @@ const PaymentForm = (props: Props) => { } }; + const disableButtons = isCanceling || !holdAcknowledged || ["processing", "error"].includes(state.status); + return (
@@ -154,14 +159,22 @@ const PaymentForm = (props: Props) => {