Disabled GooglePay and ApplePay on locations with subsciption products.

This commit is contained in:
Pedro Silva 2023-11-13 17:36:18 +00:00
parent ac7779bc41
commit 24f98cd038
No known key found for this signature in database
GPG key ID: E2EE20C0669D24B3
10 changed files with 65 additions and 1 deletions

View file

@ -10,6 +10,13 @@ class BaseHandler {
this.externalHandler = externalHandler;
}
validateContext() {
if ( this.ppcpConfig?.locations_with_subscription_product?.cart ) {
return false;
}
return true;
}
shippingAllowed() {
return true;
}

View file

@ -5,6 +5,13 @@ import CheckoutActionHandler
class PayNowHandler extends BaseHandler {
validateContext() {
if ( this.ppcpConfig?.locations_with_subscription_product?.payorder ) {
return false;
}
return true;
}
shippingAllowed() {
return false;
}

View file

@ -7,6 +7,13 @@ import BaseHandler from "./BaseHandler";
class SingleProductHandler extends BaseHandler {
validateContext() {
if ( this.ppcpConfig?.locations_with_subscription_product?.product ) {
return false;
}
return true;
}
transactionInfo() {
const errorHandler = new ErrorHandler(
this.ppcpConfig.labels.error.generic,

View file

@ -40,6 +40,10 @@ class GooglepayButton {
return;
}
if (!this.contextHandler.validateContext()) {
return;
}
this.googlePayConfig = config;
this.allowedPaymentMethods = config.allowedPaymentMethods;
this.baseCardPaymentMethod = this.allowedPaymentMethods[0];