Each time the quantity of a product is changed, the price must
be updated according to the pricelist of the user.
When the price given by the pricelist is less then the unit price
of the product, the reduction of the price must be displayed.
A not stored computed field is added in model "sale.order.line"
to compute the discounted price because when the module
product_visible_discount is installed the price unit of a SO line
is the full price of the product and the discount related to the pricelist
is written in percent in the field discount(function "product_id_change"
in addons/product_visible_discount/product_visible_discount.py).
opw:660178
The variants on a product in the ecommerce can appear:
- naturally, not a list, colored square for color, ...
- in a list of radio button.
To have the second kind, we need to enable the "List View of Variants"
customize option.
One part of the code was not the same which cause an issue when saving
the image of the variant, it was saved on the product.template instead.
This commit add an "update_product_image" function which is now called
in both scenario.
first half of:
opw-654279
forward port note: in 9.0 website/image -> web/image
To show the website_sale.modal, the product_variant_ids must be in the DOM
because all the prices are computed with the product_variant_ids.
From commit 0ff26cf
opw:650167
Firefox keep in cache the value of input.
So, when we delete a product line and call location.reload(), firefox
remember the value and state of this input and don't refresh with the new
value.
Adding True as param (forceReload) fixes the problem since it doesn't
use old value. Another way will be to add autocomplete="off".
ForcedReload (Optional): Is a Boolean flag, which, when it is true, causes the
page to always be reloaded from the server. If it is false or not specified,
the browser may reload the page from its cache.
This closes#7888#3342#7491
If the variants are displayed by list of attributes, the image of a
product displayed would be updated to the image of the first variant.
But this was not done when using the customizing option "List View of
Variants".
opw-645729
When the user is not logged, there is no branding for the options.
This is why, the product_id of the option must be written in the
template "optional product".
opw:633093
Each time a product is added in the cart, the qty of this product must be checked to
adjust the price if there is a rule (with min qty) in the partner's pricelist.
opw:630049
* `disabled` on the country select tag instead of `readonly`
* `create a new address` selected when the user set an invalid shipping
address and must correct it. Else the user was correcting the shipping
address but the option "ship to the same address" was selected.