From db997e934e9adeb7ce6dae6bf6fb518c00af2cc4 Mon Sep 17 00:00:00 2001
From: Pedro Silva
Date: Thu, 21 Dec 2023 11:46:21 +0000
Subject: [PATCH] Fix spacing when switching ApplePay payment method in
checkout page.
---
modules/ppcp-applepay/resources/js/ApplepayButton.js | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/modules/ppcp-applepay/resources/js/ApplepayButton.js b/modules/ppcp-applepay/resources/js/ApplepayButton.js
index d9d971ff9..8f1ab8eb0 100644
--- a/modules/ppcp-applepay/resources/js/ApplepayButton.js
+++ b/modules/ppcp-applepay/resources/js/ApplepayButton.js
@@ -34,6 +34,9 @@ class ApplepayButton {
// Stores initialization data sent to the button.
this.initialPaymentRequest = null;
+ // Default eligibility status.
+ this.isEligible = true;
+
this.log = function() {
if ( this.buttonConfig.is_debug ) {
console.log('[ApplePayButton]', ...arguments);
@@ -63,9 +66,9 @@ class ApplepayButton {
this.initEventHandlers();
this.isInitialized = true;
this.applePayConfig = config;
- const isEligible = (this.applePayConfig.isEligible && window.ApplePaySession) || this.buttonConfig.is_admin;
+ this.isEligible = (this.applePayConfig.isEligible && window.ApplePaySession) || this.buttonConfig.is_admin;
- if (isEligible) {
+ if (this.isEligible) {
this.fetchTransactionInfo().then(() => {
const isSubscriptionProduct = this.ppcpConfig?.data_client_id?.has_subscriptions === true;
if (isSubscriptionProduct) {
@@ -143,6 +146,11 @@ class ApplepayButton {
}
jQuery(document).on('ppcp-shown ppcp-hidden ppcp-enabled ppcp-disabled', (ev, data) => {
+ if (!this.isEligible) {
+ setVisible(wrapper_id, false);
+ return;
+ }
+
if (jQuery(data.selector).is(ppcpButtonWrapper)) {
syncButtonVisibility();
}