diff options
| author | Denis Ledoux <dle@openerp.com> | 2013-06-25 18:20:46 +0200 |
|---|---|---|
| committer | Denis Ledoux <dle@openerp.com> | 2013-06-25 18:20:46 +0200 |
| commit | 5ed41bcea4c5b0f4e4afdd45c8a114cf3ca144fc (patch) | |
| tree | f3d256944be2979be18c07282e62dc5bcb8ec10a /addons/crm/crm.py | |
| parent | 3afc97f451d8550f18b7b54a08456f7d242888e8 (diff) | |
| parent | c180afab26171617c1c7c22db5d9836b159e5e7d (diff) | |
[MERGE]upstream
bzr revid: dle@openerp.com-20130625162046-snd83ltaha9o5fl8
Diffstat (limited to 'addons/crm/crm.py')
| -rw-r--r-- | addons/crm/crm.py | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/addons/crm/crm.py b/addons/crm/crm.py index 4c9a60634a5..d1194508b71 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -222,17 +222,13 @@ class crm_case_section(osv.osv): return res def create(self, cr, uid, vals, context=None): - mail_alias = self.pool.get('mail.alias') - if not vals.get('alias_id'): - alias_name = vals.pop('alias_name', None) or vals.get('name') # prevent errors during copy() - alias_id = mail_alias.create_unique_alias(cr, uid, - {'alias_name': alias_name}, - model_name="crm.lead", - context=context) - vals['alias_id'] = alias_id - res = super(crm_case_section, self).create(cr, uid, vals, context) - mail_alias.write(cr, uid, [vals['alias_id']], {'alias_defaults': {'section_id': res, 'type': 'lead'}}, context) - return res + if context is None: + context = {} + create_context = dict(context, alias_model_name='crm.lead', alias_parent_model_name=self._name) + section_id = super(crm_case_section, self).create(cr, uid, vals, context=create_context) + section = self.browse(cr, uid, section_id, context=context) + self.pool.get('mail.alias').write(cr, uid, [section.alias_id.id], {'alias_parent_thread_id': section_id, 'alias_defaults': {'section_id': section_id, 'type': 'lead'}}, context=context) + return section_id def unlink(self, cr, uid, ids, context=None): # Cascade-delete mail aliases as well, as they should not exist without the sales team. |
