mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-04 08:47:23 +08:00
Merge pull request #193 from woocommerce/PCP-166-acdc-checkout-error-card-details
ACDC checkout error: "Card Details not valid"; but payment completes
This commit is contained in:
commit
66aa4ab841
2 changed files with 10 additions and 6 deletions
|
@ -39,4 +39,4 @@ class CartBootstrap {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default CartBootstrap;
|
export default CartBootstrap;
|
||||||
|
|
|
@ -7,6 +7,7 @@ class CreditCardRenderer {
|
||||||
this.errorHandler = errorHandler;
|
this.errorHandler = errorHandler;
|
||||||
this.spinner = spinner;
|
this.spinner = spinner;
|
||||||
this.cardValid = false;
|
this.cardValid = false;
|
||||||
|
this.formValid = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
render(wrapper, contextConfig) {
|
render(wrapper, contextConfig) {
|
||||||
|
@ -97,12 +98,8 @@ class CreditCardRenderer {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
}
|
}
|
||||||
this.errorHandler.clear();
|
this.errorHandler.clear();
|
||||||
const state = hostedFields.getState();
|
|
||||||
const formValid = Object.keys(state.fields).every(function (key) {
|
|
||||||
return state.fields[key].isValid;
|
|
||||||
});
|
|
||||||
|
|
||||||
if (formValid && this.cardValid) {
|
if (this.formValid && this.cardValid) {
|
||||||
const save_card = this.defaultConfig.save_card ? true : false;
|
const save_card = this.defaultConfig.save_card ? true : false;
|
||||||
const vault = document.getElementById('ppcp-credit-card-vault') ?
|
const vault = document.getElementById('ppcp-credit-card-vault') ?
|
||||||
document.getElementById('ppcp-credit-card-vault').checked : save_card;
|
document.getElementById('ppcp-credit-card-vault').checked : save_card;
|
||||||
|
@ -134,6 +131,13 @@ class CreditCardRenderer {
|
||||||
const validCards = this.defaultConfig.hosted_fields.valid_cards;
|
const validCards = this.defaultConfig.hosted_fields.valid_cards;
|
||||||
this.cardValid = validCards.indexOf(event.cards[0].type) !== -1;
|
this.cardValid = validCards.indexOf(event.cards[0].type) !== -1;
|
||||||
})
|
})
|
||||||
|
hostedFields.on('validityChange', (event) => {
|
||||||
|
const formValid = Object.keys(event.fields).every(function (key) {
|
||||||
|
return event.fields[key].isValid;
|
||||||
|
});
|
||||||
|
this.formValid = formValid;
|
||||||
|
|
||||||
|
})
|
||||||
document.querySelector(wrapper + ' button').addEventListener(
|
document.querySelector(wrapper + ' button').addEventListener(
|
||||||
'click',
|
'click',
|
||||||
submitEvent
|
submitEvent
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue