mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-05 08:59:14 +08:00
Handle enable/disabled only when changed
This commit is contained in:
parent
294e14d30b
commit
bf64309bf5
2 changed files with 16 additions and 3 deletions
|
@ -1,4 +1,4 @@
|
|||
import {disable, enable} from "./ButtonDisabler";
|
||||
import {disable, enable, isDisabled} from "./ButtonDisabler";
|
||||
import {hide, show} from "./Hiding";
|
||||
|
||||
/**
|
||||
|
@ -19,15 +19,18 @@ export default class BootstrapHelper {
|
|||
hide(options.messagesWrapper);
|
||||
}
|
||||
|
||||
const wasDisabled = isDisabled(options.wrapper);
|
||||
const shouldEnable = bs.shouldEnable();
|
||||
|
||||
// Handle enable / disable
|
||||
if (bs.shouldEnable()) {
|
||||
if (shouldEnable && wasDisabled) {
|
||||
bs.renderer.enableSmartButtons(options.wrapper);
|
||||
enable(options.wrapper);
|
||||
|
||||
if (!options.skipMessages) {
|
||||
enable(options.messagesWrapper);
|
||||
}
|
||||
} else {
|
||||
} else if (!shouldEnable && !wasDisabled) {
|
||||
bs.renderer.disableSmartButtons(options.wrapper);
|
||||
disable(options.wrapper, options.formSelector || null);
|
||||
|
||||
|
|
|
@ -47,6 +47,16 @@ export const setEnabled = (selectorOrElement, enable, form = null) => {
|
|||
}
|
||||
};
|
||||
|
||||
export const isDisabled = (selectorOrElement) => {
|
||||
const element = getElement(selectorOrElement);
|
||||
|
||||
if (!element) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return jQuery(element).hasClass('ppcp-disabled');
|
||||
};
|
||||
|
||||
export const disable = (selectorOrElement, form = null) => {
|
||||
setEnabled(selectorOrElement, false, form);
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue