diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index 8f2541e3047..a1252046a81 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -688,17 +688,8 @@ class crm_lead(crm_case, osv.osv): models_data = self.pool.get('ir.model.data') # Get Opportunity views - opportunity_view_form = models_data._get_id( - cr, uid, 'crm', 'crm_case_form_view_oppor') - opportunity_view_tree = models_data._get_id( - cr, uid, 'crm', 'crm_case_tree_view_oppor') - if opportunity_view_form: - opportunity_view_form = models_data.browse( - cr, uid, opportunity_view_form, context=context).res_id - if opportunity_view_tree: - opportunity_view_tree = models_data.browse( - cr, uid, opportunity_view_tree, context=context).res_id - + form_view = models_data.get_object_reference(cr, uid, 'crm', 'crm_case_form_view_oppor') + tree_view = models_data.get_object_reference(cr, uid, 'crm', 'crm_case_tree_view_oppor') return { 'name': _('Opportunity'), 'view_type': 'form', @@ -707,8 +698,8 @@ class crm_lead(crm_case, osv.osv): 'domain': [('type', '=', 'opportunity')], 'res_id': int(opportunity_id), 'view_id': False, - 'views': [(opportunity_view_form, 'form'), - (opportunity_view_tree, 'tree'), + 'views': [(form_view and form_view[1] or False, 'form'), + (tree_view and tree_view[1] or False, 'tree'), (False, 'calendar'), (False, 'graph')], 'type': 'ir.actions.act_window', } diff --git a/addons/crm/crm_phonecall.py b/addons/crm/crm_phonecall.py index 99027a5259a..9fab592fd20 100644 --- a/addons/crm/crm_phonecall.py +++ b/addons/crm/crm_phonecall.py @@ -209,25 +209,18 @@ class crm_phonecall(crm_base, osv.osv): def redirect_phonecall_view(self, cr, uid, phonecall_id, context=None): model_data = self.pool.get('ir.model.data') # Select the view - id2 = model_data._get_id(cr, uid, 'crm', 'crm_case_phone_tree_view') - id3 = model_data._get_id(cr, uid, 'crm', 'crm_case_phone_form_view') - if id2: - id2 = model_data.browse(cr, uid, id2, context=context).res_id - if id3: - id3 = model_data.browse(cr, uid, id3, context=context).res_id - - result = model_data._get_id(cr, uid, 'crm', 'view_crm_case_phonecalls_filter') - res = model_data.read(cr, uid, result, ['res_id']) - + tree_view = model_data.get_object_reference(cr, uid, 'crm', 'crm_case_phone_tree_view') + form_view = model_data.get_object_reference(cr, uid, 'crm', 'crm_case_phone_form_view') + search_view = model_data.get_object_reference(cr, uid, 'crm', 'view_crm_case_phonecalls_filter') value = { 'name': _('Phone Call'), 'view_type': 'form', 'view_mode': 'tree,form', 'res_model': 'crm.phonecall', 'res_id' : int(phonecall_id), - 'views': [(id3, 'form'), (id2, 'tree'), (False, 'calendar')], + 'views': [(form_view and form_view[1] or False, 'form'), (tree_view and tree_view[1] or False, 'tree'), (False, 'calendar')], 'type': 'ir.actions.act_window', - 'search_view_id': res['res_id'], + 'search_view_id': search_view and search_view[1] or False, } return value diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py index a00a25f47a4..e2016f6d8aa 100644 --- a/addons/crm/res_partner.py +++ b/addons/crm/res_partner.py @@ -35,10 +35,7 @@ class res_partner(osv.osv): } def redirect_partner_form(self, cr, uid, partner_id, context=None): - model_data = self.pool.get('ir.model.data') - result = model_data._get_id(cr, uid, 'base', 'view_res_partner_filter') - res = model_data.read(cr, uid, result, ['res_id']) - + search_view = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'view_res_partner_filter') value = { 'domain': "[]", 'view_type': 'form', @@ -48,7 +45,7 @@ class res_partner(osv.osv): 'view_id': False, 'context': context, 'type': 'ir.actions.act_window', - 'search_view_id': res['res_id'] + 'search_view_id': search_view and search_view[1] or False } return value