From b8e85fe3f2b90b28a7b5ba9cd79d0f653c8c186d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20H=C3=BCsken?= Date: Thu, 14 Nov 2024 16:16:50 +0100 Subject: [PATCH 1/2] Disable "Add payment method" button while adding card --- .../resources/js/add-payment-method.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js b/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js index 8e75e3ad7..be1136820 100644 --- a/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js +++ b/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js @@ -95,11 +95,11 @@ import { ) { return; } - + document.getElementById('place_order').disabled = true; event.preventDefault(); - cardFields.submit().catch( ( error ) => { console.error( error ); + document.getElementById('place_order').disabled = false; } ); } ); } ); From c1dbb833508152acdeda667acae5ec037bb2ff8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20H=C3=BCsken?= Date: Mon, 18 Nov 2024 14:49:03 +0100 Subject: [PATCH 2/2] Refactor event listener setup for place order button --- .../resources/js/add-payment-method.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js b/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js index be1136820..88df7d309 100644 --- a/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js +++ b/modules/ppcp-save-payment-methods/resources/js/add-payment-method.js @@ -82,9 +82,8 @@ import { renderFields( cardFields ); } - document - .querySelector( '#place_order' ) - ?.addEventListener( 'click', ( event ) => { + const placeOrderButton = document.querySelector( '#place_order' ); + placeOrderButton?.addEventListener( 'click', ( event ) => { const cardPaymentToken = document.querySelector( 'input[name="wc-ppcp-credit-card-gateway-payment-token"]:checked' )?.value; @@ -95,11 +94,11 @@ import { ) { return; } - document.getElementById('place_order').disabled = true; + placeOrderButton.disabled = true; event.preventDefault(); cardFields.submit().catch( ( error ) => { console.error( error ); - document.getElementById('place_order').disabled = false; + placeOrderButton.disabled = false; } ); } ); } );