[FIX] event_sale: consistent addition of event-related fields on products and templates
bzr revid: odo@openerp.com-20140130172422-wvq804yizh5x3xe0
This commit is contained in:
parent
f7f61a4bfe
commit
d248bcb33a
|
@ -22,7 +22,7 @@
|
|||
from openerp.osv import fields, osv
|
||||
from openerp.tools.translate import _
|
||||
|
||||
class product(osv.osv):
|
||||
class product_template(osv.osv):
|
||||
_inherit = 'product.template'
|
||||
_columns = {
|
||||
'event_ok': fields.boolean('Event Subscription', help='Determine if a product needs to create automatically an event registration at the confirmation of a sales order line.'),
|
||||
|
@ -30,7 +30,18 @@ class product(osv.osv):
|
|||
}
|
||||
|
||||
def onchange_event_ok(self, cr, uid, ids, type, event_ok, context=None):
|
||||
return {'value': {'type': event_ok and 'service' or type != 'service' and type or False}}
|
||||
if event_ok:
|
||||
return {'value': {'type': 'service'}}
|
||||
return {}
|
||||
|
||||
class product(osv.osv):
|
||||
_inherit = 'product.product'
|
||||
|
||||
def onchange_event_ok(self, cr, uid, ids, type, event_ok, context=None):
|
||||
# cannot directly forward to product.template as the ids are theoretically different
|
||||
if event_ok:
|
||||
return {'value': {'type': 'service'}}
|
||||
return {}
|
||||
|
||||
|
||||
class sale_order_line(osv.osv):
|
||||
|
|
|
@ -1,22 +1,36 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<record model="ir.ui.view" id="event_sale_order">
|
||||
<field name="name">event.product</field>
|
||||
<record model="ir.ui.view" id="event_sale_product_form">
|
||||
<field name="model">product.product</field>
|
||||
<field name="inherit_id" ref="product.product_normal_form_view" />
|
||||
<field name="arch" type="xml">
|
||||
<div name="options" position="inside">
|
||||
<field name="event_ok" on_change="onchange_event_ok(type, event_ok, context)"/>
|
||||
<label for="event_ok"
|
||||
attrs="{'readonly': [('is_only_child', '=', False)]}"/>
|
||||
<field name="event_ok" on_change="onchange_event_ok(type, event_ok, context)"
|
||||
attrs="{'readonly': [('is_only_child', '=', False)]}"/>
|
||||
<label for="event_ok"/>
|
||||
</div>
|
||||
<div name='ean' position="after">
|
||||
<field name="event_type_id" attrs="{'readonly': ['|', ('event_ok', '=', False), ('is_only_child', '=', False)]}"/>
|
||||
<field name="event_type_id" attrs="{'invisible': [('event_ok', '=', False)],
|
||||
'readonly': [('is_only_child', '=', False)]}"/>
|
||||
</div>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="event_sale_product_template_form">
|
||||
<field name="model">product.template</field>
|
||||
<field name="inherit_id" ref="product.product_template_form_view" />
|
||||
<field name="arch" type="xml">
|
||||
<div name="options" position="inside">
|
||||
<field name="event_ok" on_change="onchange_event_ok(type, event_ok, context)"/>
|
||||
<label for="event_ok"/>
|
||||
</div>
|
||||
<field name='company_id' position="after">
|
||||
<field name="event_type_id" attrs="{'invisible': [('event_ok', '=', False)]}"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="event_order_line">
|
||||
<field name="name">event.sale.order</field>
|
||||
<field name="model">sale.order</field>
|
||||
|
|
Loading…
Reference in New Issue