[FIX] website_quote: Take the template order line description if the

product is defined on the template

Also, implement 'back' button in quote template frontend edit mode
This commit is contained in:
Yannick Tivisse
2016-01-06 16:58:19 +01:00
parent ba2b37d3b9
commit d0e58a647d
2 changed files with 18 additions and 2 deletions
+13 -2
View File
@@ -9,6 +9,7 @@ import datetime
import openerp.addons.decimal_precision as dp
from openerp import SUPERUSER_ID
from openerp.tools import DEFAULT_SERVER_DATE_FORMAT
from openerp.tools.translate import _
@@ -129,6 +130,16 @@ class sale_order_line(osv.osv):
values = self._inject_quote_description(cr, uid, values, context)
return super(sale_order_line, self).write(cr, uid, ids, values, context=context)
# The overrided onchange was written in new api, sorry
# Take the description on the order template if the product is present in it
@api.multi
@api.onchange('product_id')
def product_id_change(self):
domain = super(sale_order_line, self).product_id_change()
if self.order_id.template_id:
self.name = next((quote_line.name for quote_line in self.order_id.template_id.quote_line if quote_line.product_id.id == self.product_id.id), self.name)
return domain
class sale_order(osv.osv):
_inherit = 'sale.order'
@@ -174,7 +185,7 @@ class sale_order(osv.osv):
if partner:
context = dict(context or {})
context['lang'] = self.pool['res.partner'].browse(cr, uid, partner, context).lang
context['lang'] = self.pool['res.partner'].browse(cr, uid, partner, context=context).lang
pricelist_obj = self.pool['product.pricelist']
@@ -229,7 +240,7 @@ class sale_order(osv.osv):
}))
date = False
if quote_template.number_of_days > 0:
date = (datetime.datetime.now() + datetime.timedelta(quote_template.number_of_days)).strftime("%Y-%m-%d")
date = (datetime.datetime.now() + datetime.timedelta(quote_template.number_of_days)).strftime(DEFAULT_SERVER_DATE_FORMAT)
data = {
'order_line': lines,
'website_description': quote_template.website_description,
@@ -570,6 +570,11 @@
</div>
</div>
<div class="col-md-9">
<div class="row">
<div t-ignore="true" class="css_editable_mode_hidden col-md-offset-11">
<a class="btn btn-info hidden-print" t-att-href="'/web#return_label=Website&amp;model=%s&amp;id=%s&amp;action=%s&amp;view_type=form' % (template._name, template.id, request.env.ref('website_quote.action_sale_quotation_template').id)">Back</a>
</div>
</div>
<div class="alert alert-info alert-dismissable" t-ignore="True">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&amp;times;</button>
<p>