diff options
| author | Damien Bouvy <dbo@odoo.com> | 2016-12-12 17:16:59 +0100 |
|---|---|---|
| committer | Damien Bouvy <dbo@odoo.com> | 2016-12-12 17:43:59 +0100 |
| commit | 400a152b9131090a79de31f39d4eea3c349a36db (patch) | |
| tree | 87d273b8665b157367bdb0f83166597a03416302 | |
| parent | 5da4df80928c8db0f6c46ebe6f2c11ea87d36ec8 (diff) | |
[FIX] website_quote: stop rebrowsing with ctx in an onchange
Rebrowsing the 'self' record during an onchange loses all
the modifications currently being 'onchanged' and
therefore kills the feature.
| -rw-r--r-- | addons/website_quote/models/sale_order.py | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/addons/website_quote/models/sale_order.py b/addons/website_quote/models/sale_order.py index 8fd3f15839e..0a386063238 100644 --- a/addons/website_quote/models/sale_order.py +++ b/addons/website_quote/models/sale_order.py @@ -81,11 +81,10 @@ class SaleOrder(models.Model): def onchange_template_id(self): if not self.template_id: return - if self.partner_id: - self = self.with_context(lang=self.partner_id.lang) + template = self.template_id.with_context(lang=self.partner_id.lang) order_lines = [(5, 0, 0)] - for line in self.template_id.quote_line: + for line in template.quote_line: if self.pricelist_id: price = self.pricelist_id.with_context(uom=line.product_uom_id.id).get_product_price(line.product_id, 1, False) else: @@ -111,7 +110,7 @@ class SaleOrder(models.Model): self.order_line._compute_tax_id() option_lines = [] - for option in self.template_id.options: + for option in template.options: if self.pricelist_id: price = self.pricelist_id.with_context(uom=option.uom_id.id).get_product_price(option.product_id, 1, False) else: @@ -129,14 +128,14 @@ class SaleOrder(models.Model): option_lines.append((0, 0, data)) self.options = option_lines - if self.template_id.number_of_days > 0: - self.validity_date = fields.Date.to_string(datetime.now() + timedelta(self.template_id.number_of_days)) + if template.number_of_days > 0: + self.validity_date = fields.Date.to_string(datetime.now() + timedelta(template.number_of_days)) - self.website_description = self.template_id.website_description - self.require_payment = self.template_id.require_payment + self.website_description = template.website_description + self.require_payment = template.require_payment - if self.template_id.note: - self.note = self.template_id.note + if template.note: + self.note = template.note @api.multi def open_quotation(self): |
