- def action_makeMeeting(self, cr, uid, ids, context=None):
- """
- This opens Meeting's calendar view to schedule meeting on current Opportunity
- @return : Dictionary value for created Meeting view
- """
- if context is None:
- context = {}
- value = {}
- data_obj = self.pool.get('ir.model.data')
- for opp in self.browse(cr, uid, ids, context=context):
- # Get meeting views
- tree_view = data_obj.get_object_reference(cr, uid, 'crm', 'crm_case_tree_view_meet')
- form_view = data_obj.get_object_reference(cr, uid, 'crm', 'crm_case_form_view_meet')
- calander_view = data_obj.get_object_reference(cr, uid, 'crm', 'crm_case_calendar_view_meet')
- search_view = data_obj.get_object_reference(cr, uid, 'crm', 'view_crm_case_meetings_filter')
- context.update({
- 'default_opportunity_id': opp.id,
- 'default_partner_id': opp.partner_id and opp.partner_id.id or False,
- 'default_user_id': uid,
- 'default_section_id': opp.section_id and opp.section_id.id or False,
- 'default_email_from': opp.email_from,
- 'default_state': 'open',
- 'default_name': opp.name
- })
- value = {
- 'name': _('Meetings'),
- 'context': context,
- 'view_type': 'form',
- 'view_mode': 'calendar,form,tree',
- 'res_model': 'crm.meeting',
- 'view_id': False,
- 'views': [(calander_view and calander_view[1] or False, 'calendar'), (form_view and form_view[1] or False, 'form'), (tree_view and tree_view[1] or False, 'tree')],
- 'type': 'ir.actions.act_window',
- 'search_view_id': search_view and search_view[1] or False,
- 'nodestroy': True
- }
- return value
-
-
- def unlink(self, cr, uid, ids, context=None):
- for lead in self.browse(cr, uid, ids, context):
- if (not lead.section_id.allow_unlink) and (lead.state != 'draft'):
- raise osv.except_osv(_('Error'),
- _("You cannot delete lead '%s'; it must be in state 'Draft' to be deleted. " \
- "You should better cancel it, instead of deleting it.") % lead.name)
- return super(crm_lead, self).unlink(cr, uid, ids, context)