From 8711954c1c6e8d3f0dc60853148b4463667f8082 Mon Sep 17 00:00:00 2001 From: Denis Ledoux Date: Thu, 14 Nov 2013 21:45:50 +0100 Subject: [PATCH] [FIX]crm: duplicating lead/opp duplicated the stage and put to false date_open if it was an opp. Now put stage to 'new' stage and set date_open to today if it is an opp bzr revid: dle@openerp.com-20131114204550-wavibpj1memdx60c --- addons/crm/crm_lead.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index 6ca72fe18ed..edc61b464f7 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -933,6 +933,23 @@ class crm_lead(base_stage, format_address, osv.osv): vals['probability'] = stage.probability return super(crm_lead, self).write(cr, uid, ids, vals, context=context) + def copy(self, cr, uid, id, default=None, context=None): + if not default: + default = {} + if not context: + context = {} + lead = self.browse(cr, uid, id, context=context) + local_context = dict(context) + local_context.setdefault('default_type', lead.type) + local_context.setdefault('default_section_id', lead.section_id) + if lead.type == 'opportunity': + default['date_open'] = fields.datetime.now() + else: + default['date_open'] = False + default['date_closed'] = False + default['stage_id'] = self._get_default_stage_id(cr, uid, local_context) + return super(crm_lead, self).copy(cr, uid, id, default, context=context) + def new_mail_send(self, cr, uid, ids, context=None): ''' This function opens a window to compose an email, with the edi sale template message loaded by default