From d0375a6f07a3fca259ae1f5a925978cd35c10315 Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Tue, 1 Dec 2015 16:54:57 +0100 Subject: [PATCH] [IMP] website_sale: no change in behavior but allow new ecommerce designs --- addons/website_sale/static/src/js/website_sale.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/addons/website_sale/static/src/js/website_sale.js b/addons/website_sale/static/src/js/website_sale.js index 743c7e2a24c..3ecbcde4308 100644 --- a/addons/website_sale/static/src/js/website_sale.js +++ b/addons/website_sale/static/src/js/website_sale.js @@ -123,11 +123,15 @@ $('.oe_website_sale').each(function () { ev.preventDefault(); var $link = $(ev.currentTarget); var $input = $link.parent().find("input"); + var product_id = +$input.closest('div:has(input[name="product_id"])').find('input[name="product_id"]').val(); var min = parseFloat($input.data("min") || 0); var max = parseFloat($input.data("max") || Infinity); var quantity = ($link.has(".fa-minus").length ? -1 : 1) + parseFloat($input.val(),10); - $input.val(quantity > min ? (quantity < max ? quantity : max) : min); - $('input[name="'+$input.attr("name")+'"]').val(quantity > min ? (quantity < max ? quantity : max) : min); + // if they are more of one input for this product (eg: option modal) + $('input[name="'+$input.attr("name")+'"]').add($input).filter(function () { + var $prod = $(this).closest('*:has(input[name="product_id"])'); + return !$prod.length || +$prod.find('input[name="product_id"]').val() === product_id; + }).val(quantity > min ? (quantity < max ? quantity : max) : min); $input.change(); return false; });