diff --git a/addons/website_sale/static/src/js/website_sale_payment.js b/addons/website_sale/static/src/js/website_sale_payment.js index 45373cea37a..cc104fecc39 100644 --- a/addons/website_sale/static/src/js/website_sale_payment.js +++ b/addons/website_sale/static/src/js/website_sale_payment.js @@ -7,9 +7,12 @@ var $checkbox = $("#checkbox_cgv"); if (!$checkbox.length) { return; } +var $pay_button = $('button#o_payment_form_pay'); $checkbox.on('change', function (ev) { - $('button#o_payment_form_pay').prop('disabled', !ev.target.checked); + $pay_button.data('disabled_reasons', $pay_button.data('disabled_reasons') || {}); + $pay_button.data('disabled_reasons').cgv = !ev.target.checked; + $pay_button.prop('disabled', _.contains($pay_button.data('disabled_reasons'), true)); }); $checkbox.change(); }); diff --git a/addons/website_sale_delivery/static/src/js/website_sale_delivery.js b/addons/website_sale_delivery/static/src/js/website_sale_delivery.js index 476c1bd4faa..39581ee54c8 100644 --- a/addons/website_sale_delivery/static/src/js/website_sale_delivery.js +++ b/addons/website_sale_delivery/static/src/js/website_sale_delivery.js @@ -35,7 +35,8 @@ odoo.define('website_sale_delivery.checkout', function (require) { $carrier_badge.children('span').text(result.new_amount_delivery); $carrier_badge.removeClass('d-none'); $compute_badge.addClass('d-none'); - $pay_button.prop('disabled', false); + $pay_button.data('disabled_reasons').carrier_selection = false; + $pay_button.prop('disabled', _.contains($pay_button.data('disabled_reasons'), true)); } else { console.error(result.error_message); @@ -48,6 +49,8 @@ odoo.define('website_sale_delivery.checkout', function (require) { }; var _onCarrierClick = function(ev) { + $pay_button.data('disabled_reasons', $pay_button.data('disabled_reasons') || {}); + $pay_button.data('disabled_reasons').carrier_selection = true; $pay_button.prop('disabled', true); var carrier_id = $(ev.currentTarget).val(); var values = {'carrier_id': carrier_id};