diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index cd514081a0a..ca4ef46295a 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -121,7 +121,7 @@ class crm_case_section(osv.osv):
'note': fields.text('Description'),
'working_hours': fields.float('Working Hours', digits=(16,2 )),
'stage_ids': fields.many2many('crm.case.stage', 'section_stage_rel', 'section_id', 'stage_id', 'Stages'),
- 'alias_id': fields.many2one('mail.alias', 'Mail Alias'),
+ 'alias_id': fields.many2one('mail.alias', 'Mail Alias', ondelete="cascade", required=True),
}
def _get_stage_common(self, cr, uid, context):
@@ -161,14 +161,17 @@ class crm_case_section(osv.osv):
def create(self, cr, uid, vals, context=None):
model_pool = self.pool.get('ir.model.data')
alias_pool = self.pool.get('mail.alias')
- model, res_id = model_pool.get_object_reference( cr, uid, "crm", "model_crm_lead")
- vals.update({'alias_name': "sales",
- 'alias_model_id': res_id})
- alias_pool.create_unique_alias(cr, uid, vals, context=context)
- res = super(crm_case_section, self).create(cr, uid, vals, context)
- record = self.read(cr, uid, res, context)
- alias_pool.write(cr, uid, [record['alias_id']],{'alias_defaults':{ 'section_id': res, 'type': 'lead'}}, context)
- return res
+ if not vals.get('alias_id'):
+ model, res_id = model_pool.get_object_reference( cr, uid, "crm", "model_crm_lead")
+ vals.update({'alias_name': "sales",
+ 'alias_model_id': res_id})
+ alias_pool.create_unique_alias(cr, uid, vals, context=context)
+ res = super(crm_case_section, self).create(cr, uid, vals, context)
+ record = self.read(cr, uid, res, context)
+ alias_pool.write(cr, uid, [record['alias_id']],{'alias_defaults':{'section_id':res,'type':'lead'}},context)
+ return res
+ return super(crm_case_section, self).create(cr, uid, vals, context)
+
class crm_case_categ(osv.osv):
""" Category of Case """
diff --git a/addons/crm/crm_data.xml b/addons/crm/crm_data.xml
index 4a15ac2aa44..f4d4d8bd8b0 100644
--- a/addons/crm/crm_data.xml
+++ b/addons/crm/crm_data.xml
@@ -13,21 +13,17 @@
email
-
- Sales Department
- Sales
-
sales@openerp.my.openerp.com
{'type':'lead'}
-
- info@openerp.my.openerp.com
-
-
- {'type':'lead'}
+
+
+ Sales Department
+ Sales
+
diff --git a/addons/crm/crm_demo.xml b/addons/crm/crm_demo.xml
index f345d86d030..1e5d837f818 100644
--- a/addons/crm/crm_demo.xml
+++ b/addons/crm/crm_demo.xml
@@ -12,10 +12,18 @@
+
+ info@openerp.my.openerp.com
+
+
+ {'type':'lead'}
+
+
Sales Marketing Department
Sales Marketing
+
@@ -23,6 +31,5 @@
True
-
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index b0db330cca9..d0e1ff72344 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -76,7 +76,7 @@
-
+