From a522cd9d635502121b3e4c6118fda6fcfcf104d4 Mon Sep 17 00:00:00 2001 From: "atp (Open ERP)" Date: Fri, 26 Mar 2010 17:39:08 +0530 Subject: [PATCH] [IMP]: crm: open crm Meeting form in edit all button using function in place of calendar edit all wizard. bzr revid: atp@tinyerp.co.in-20100326120908-47h3pyawkp2bp5fx --- addons/crm/crm_meeting.py | 42 +++++++++++++++++++++++++++++++++ addons/crm/crm_meeting_view.xml | 6 ++--- 2 files changed, 44 insertions(+), 4 deletions(-) diff --git a/addons/crm/crm_meeting.py b/addons/crm/crm_meeting.py index 9e3297704b1..d76a31136ae 100644 --- a/addons/crm/crm_meeting.py +++ b/addons/crm/crm_meeting.py @@ -23,6 +23,8 @@ from osv import fields, osv import crm from datetime import datetime, timedelta from datetime import datetime, timedelta +from tools.translate import _ +from base_calendar import base_calendar class crm_opportunity(osv.osv): _name = 'crm.opportunity' @@ -65,6 +67,46 @@ class crm_meeting(osv.osv): _defaults = { 'state': lambda *a: 'draft', } + + def open_meeting(self, cr, uid, ids, context=None): + """ + Open Crm Meeting Form for Crm Meeting. + @param cr: the current row, from the database cursor, + @param uid: the current user’s ID for security checks, + @param ids: List of crm meeting’s IDs + @param context: A standard dictionary for contextual values + @return: Dictionary value which open Crm Meeting form. + """ + if not context: + context = {} + + data_obj = self.pool.get('ir.model.data') + + value = {} + + id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_meet') + id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_meet') + id4 = data_obj._get_id(cr, uid, 'crm', 'crm_case_calendar_view_meet') + if id2: + id2 = data_obj.browse(cr, uid, id2, context=context).res_id + if id3: + id3 = data_obj.browse(cr, uid, id3, context=context).res_id + if id4: + id4 = data_obj.browse(cr, uid, id4, context=context).res_id + for id in ids: + value = { + 'name': _('Meeting'), + 'view_type': 'form', + 'view_mode': 'form,tree', + 'res_model': 'crm.meeting', + 'view_id': False, + 'views': [(id2, 'form'), (id3, 'tree'), (id4, 'calendar')], + 'type': 'ir.actions.act_window', + 'res_id': base_calendar.base_calendar_id2real_id(id), + 'nodestroy': True + } + + return value crm_meeting() diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml index 7f30024235b..5fb6653eb6a 100755 --- a/addons/crm/crm_meeting_view.xml +++ b/addons/crm/crm_meeting_view.xml @@ -46,11 +46,9 @@