diff --git a/addons/account/models/account_invoice.py b/addons/account/models/account_invoice.py index aebc0201e65..6ad1d83021c 100644 --- a/addons/account/models/account_invoice.py +++ b/addons/account/models/account_invoice.py @@ -1322,9 +1322,6 @@ class AccountInvoiceLine(models.Model): self.price_unit = 0.0 domain['uom_id'] = [] else: - # Use the purchase uom by default - self.uom_id = self.product_id.uom_po_id - if part.lang: product = self.product_id.with_context(lang=part.lang) else: diff --git a/addons/purchase/models/account_invoice.py b/addons/purchase/models/account_invoice.py index e068a788e6a..ec35351ddd0 100644 --- a/addons/purchase/models/account_invoice.py +++ b/addons/purchase/models/account_invoice.py @@ -59,6 +59,13 @@ class AccountInvoice(models.Model): data['account_id'] = account.id return data + def _onchange_product_id(self): + domain = super(AccountInvoice, self)._onchange_product_id() + if self.purchase_id: + # Use the purchase uom by default + self.uom_id = self.product_id.uom_po_id + return domain + # Load all unsold PO lines @api.onchange('purchase_id') def purchase_order_change(self): diff --git a/odoo/addons/base/ir/ir_qweb/assetsbundle.py b/odoo/addons/base/ir/ir_qweb/assetsbundle.py index 5034c1d84cf..28708f19ecb 100644 --- a/odoo/addons/base/ir/ir_qweb/assetsbundle.py +++ b/odoo/addons/base/ir/ir_qweb/assetsbundle.py @@ -199,12 +199,15 @@ class AssetsBundle(object): return self.env['ir.attachment'].sudo().browse(attachment_ids) def save_attachment(self, type, content, inc=None): + assert type in ('js', 'css') ira = self.env['ir.attachment'] fname = '%s%s.%s' % (self.name, ('' if inc is None else '.%s' % inc), type) + mimetype = 'application/javascript' if type == 'js' else 'text/css' values = { 'name': "/web/content/%s" % type, 'datas_fname': fname, + 'mimetype' : mimetype, 'res_model': 'ir.ui.view', 'res_id': False, 'type': 'binary',