Enable the "pay later" on card page when card page is updated.

This commit is contained in:
Narek Zakarian 2022-05-06 18:22:11 +04:00
parent 6ac84bc801
commit 5965cc4bde
2 changed files with 20 additions and 14 deletions

View file

@ -14,6 +14,14 @@ class MessageRenderer {
placement: this.config.placement,
style: this.config.style
}).render(this.config.wrapper);
jQuery(document.body).on('updated_cart_totals', () => {
paypal.Messages({
amount: this.config.amount,
placement: this.config.placement,
style: this.config.style
}).render(this.config.wrapper);
});
}
renderWithAmount(amount) {
@ -46,4 +54,4 @@ class MessageRenderer {
return true;
}
}
export default MessageRenderer;
export default MessageRenderer;

View file

@ -341,19 +341,17 @@ class SmartButton implements SmartButtonInterface {
$not_enabled_on_cart = $this->settings->has( 'message_cart_enabled' ) &&
! $this->settings->get( 'message_cart_enabled' );
if (
is_cart()
&& ! $not_enabled_on_cart
) {
add_action(
$this->proceed_to_checkout_button_renderer_hook(),
array(
$this,
'message_renderer',
),
19
);
}
add_action(
$this->proceed_to_checkout_button_renderer_hook(),
function() use ( $not_enabled_on_cart ) {
if ( ! is_cart() || $not_enabled_on_cart ) {
return;
}
$this->message_renderer();
},
19
);
$not_enabled_on_product_page = $this->settings->has( 'message_product_enabled' ) &&
! $this->settings->get( 'message_product_enabled' );