Fix copy of a variant
Don't duplicate the template if we are on a variant. bzr revid: ced-ac9942cad56d7f1b68c03d93df76744494cb25fa
This commit is contained in:
@@ -378,6 +378,25 @@ class product_product(osv.osv):
|
||||
if 'uom' in context:
|
||||
result2[res['id']] = self.pool.get('product.uom')._compute_price(cr, uid, context['uom'], result2[res['id']])
|
||||
return result2
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
if not context:
|
||||
context={}
|
||||
|
||||
if ('variant' in context) and context['variant']:
|
||||
fields = ['product_tmpl_id', 'active', 'variants', 'default_code',
|
||||
'price_margin', 'price_extra']
|
||||
data = self.read(cr, uid, id, fields=fields, context=context)
|
||||
for f in fields:
|
||||
if f in default:
|
||||
data[f] = default[f]
|
||||
data['product_tmpl_id'] = data.get('product_tmpl_id', False) \
|
||||
and data['product_tmpl_id'][0]
|
||||
del data['id']
|
||||
return self.create(cr, uid, data)
|
||||
else:
|
||||
return super(product_product, self).copy(cr, uid, id, default=default,
|
||||
context=context)
|
||||
product_product()
|
||||
|
||||
class product_packaging(osv.osv):
|
||||
|
||||
@@ -138,6 +138,7 @@
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">product.product</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="context">{'variant': True}</field>
|
||||
</record>
|
||||
<record model="ir.actions.act_window.view" id="product_variant_action_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
|
||||
Reference in New Issue
Block a user