[FIX] event without base_contact
bzr revid: fp@tinyerp.com-20111218211459-cknoy30tpuy7mrh3
This commit is contained in:
parent
f413683b8d
commit
fe36026c1e
|
@ -578,13 +578,7 @@ class event_registration(osv.osv):
|
|||
if not contact:
|
||||
return data
|
||||
addr_obj = self.pool.get('res.partner.address')
|
||||
job_obj = self.pool.get('res.partner.job')
|
||||
|
||||
if partner:
|
||||
partner_addresses = addr_obj.search(cr, uid, [('partner_id', '=', partner)])
|
||||
job_ids = job_obj.search(cr, uid, [('contact_id', '=', contact), ('address_id', 'in', partner_addresses)])
|
||||
if job_ids:
|
||||
data['email_from'] = job_obj.browse(cr, uid, job_ids[0]).email
|
||||
data['email_from'] = addr_obj.browse(cr, uid, contact).email
|
||||
return {'value': data}
|
||||
|
||||
def onchange_event(self, cr, uid, ids, event_id, partner_invoice_id):
|
||||
|
@ -636,7 +630,6 @@ class event_registration(osv.osv):
|
|||
@param event_id: Event ID
|
||||
@param partner_invoice_id: Partner Invoice ID
|
||||
"""
|
||||
job_obj = self.pool.get('res.partner.job')
|
||||
res_obj = self.pool.get('res.partner')
|
||||
|
||||
data = {}
|
||||
|
@ -648,14 +641,10 @@ class event_registration(osv.osv):
|
|||
d = self.onchange_partner_invoice_id(cr, uid, ids, event_id, part)
|
||||
# this updates the dictionary
|
||||
data.update(d['value'])
|
||||
addr = res_obj.address_get(cr, uid, [part])
|
||||
addr = res_obj.address_get(cr, uid, [part]).get('default', False)
|
||||
if addr:
|
||||
if addr.has_key('default'):
|
||||
job_ids = job_obj.search(cr, uid, [('address_id', '=', addr['default'])])
|
||||
if job_ids:
|
||||
data['contact_id'] = job_obj.browse(cr, uid, job_ids[0]).contact_id.id
|
||||
d = self.onchange_contact_id(cr, uid, ids, data['contact_id'], part)
|
||||
data.update(d['value'])
|
||||
d = self.onchange_contact_id(cr, uid, ids, addr, part)
|
||||
data.update(d['value'])
|
||||
return {'value': data}
|
||||
|
||||
def onchange_partner_invoice_id(self, cr, uid, ids, event_id, partner_invoice_id):
|
||||
|
|
|
@ -48,21 +48,16 @@ class partner_event_registration(osv.osv_memory):
|
|||
"""
|
||||
value = {}
|
||||
res_obj = self.pool.get('res.partner')
|
||||
job_obj = self.pool.get('res.partner.job')
|
||||
addr_obj = self.pool.get('res.partner.address')
|
||||
reg_obj = self.pool.get('event.registration')
|
||||
mod_obj = self.pool.get('ir.model.data')
|
||||
|
||||
record_ids = context and context.get('active_ids', []) or []
|
||||
addr = res_obj.address_get(cr, uid, record_ids)
|
||||
contact_id = False
|
||||
email = False
|
||||
if addr.has_key('default'):
|
||||
job_ids = job_obj.search(cr, uid, [('address_id', '=', addr['default'])], context=context)
|
||||
if job_ids:
|
||||
contact = job_obj.browse(cr, uid, job_ids[0], context=context)
|
||||
if contact:
|
||||
contact_id = contact.contact_id.id
|
||||
email = contact.email
|
||||
contact_id = addr.get('default', False)
|
||||
if contact_id:
|
||||
email = addr_obj.browse(cr, uid, contact_id, context=context).email
|
||||
|
||||
result = mod_obj.get_object_reference(cr, uid, 'event', 'view_registration_search')
|
||||
res = result and result[1] or False
|
||||
|
@ -143,4 +138,4 @@ class partner_event_registration(osv.osv_memory):
|
|||
|
||||
partner_event_registration()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
Loading…
Reference in New Issue