diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index 330bbb1fc9b..cca195a1539 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -102,6 +102,7 @@ class crm_case_section(osv.osv):
""" Model for sales teams. """
_name = "crm.case.section"
_inherits = {'mail.alias': 'alias_id'}
+ _inherit = "mail.thread"
_description = "Sales Teams"
_order = "complete_name"
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index fff47205582..7c5b4f5b632 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -277,6 +277,10 @@ class crm_lead(base_stage, format_address, osv.osv):
def create(self, cr, uid, vals, context=None):
obj_id = super(crm_lead, self).create(cr, uid, vals, context)
+ section_id = self.browse(cr, uid, obj_id, context=context).section_id
+ if section_id:
+ followers = [follow.id for follow in section_id.message_follower_ids]
+ self.message_subscribe(cr, uid, [obj_id], followers, context=context)
self.create_send_note(cr, uid, [obj_id], context=context)
return obj_id
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index 4f4d73d5f43..373844a08af 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -115,6 +115,10 @@
+
+
+
+
diff --git a/addons/project/project.py b/addons/project/project.py
index edd4e0c614a..94ae9ed35bc 100644
--- a/addons/project/project.py
+++ b/addons/project/project.py
@@ -1098,17 +1098,13 @@ class task(base_stage, osv.osv):
}, context=context)
return True
- def project_message_followers(self, cr, uid, task_id, context=None):
+ def create(self, cr, uid, vals, context=None):
+ task_id = super(task, self).create(cr, uid, vals, context=context)
project_obj = self.pool.get("project.project")
project_id = self.browse(cr, uid, task_id, context=context).project_id
if project_id:
- followers = [follower.id for follower in project_obj.browse(cr, uid, project_id.id, context=context).message_follower_ids]
- self.message_subscribe(cr, uid, task_id, followers, context=context)
- return True
-
- def create(self, cr, uid, vals, context=None):
- task_id = super(task, self).create(cr, uid, vals, context=context)
- self.project_message_followers(cr, uid, task_id, context=context)
+ followers = [follower.id for follower in project_id.message_follower_ids]
+ self.message_subscribe(cr, uid, [task_id], followers, context=context)
self._store_history(cr, uid, [task_id], context=context)
self.create_send_note(cr, uid, [task_id], context=context)
return task_id
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index ea3a892eb32..805d29eb98d 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -379,16 +379,12 @@ class project_issue(base_stage, osv.osv):
self.write(cr, uid, ids, {'date_open': False, 'date_closed': False})
return res
- def project_message_followers(self, cr, uid, issue_id, context=None):
- project_obj = self.pool.get("project.project")
- project_id = self.browse(cr, uid, issue_id, context=context).project_id
- followers = [follower.id for follower in project_obj.browse(cr, uid, project_id.id, context=context).message_follower_ids]
- self.message_subscribe(cr, uid, issue_id, followers, context=context)
- return True
-
def create(self, cr, uid, vals, context=None):
obj_id = super(project_issue, self).create(cr, uid, vals, context=context)
- self.project_message_followers(cr, uid, obj_id, context=context)
+ project_obj = self.pool.get("project.project")
+ project_id = self.browse(cr, uid, obj_id, context=context).project_id
+ followers = [follower.id for follower in project_id.message_follower_ids]
+ self.message_subscribe(cr, uid, [obj_id], followers, context=context)
self.create_send_note(cr, uid, [obj_id], context=context)
return obj_id
diff --git a/addons/sale_crm/sale_crm.py b/addons/sale_crm/sale_crm.py
index b6d5ec25ce1..b7bd064563d 100644
--- a/addons/sale_crm/sale_crm.py
+++ b/addons/sale_crm/sale_crm.py
@@ -30,6 +30,14 @@ class sale_order(osv.osv):
domain="['|',('section_id','=',section_id),('section_id','=',False), ('object_id.model', '=', 'crm.lead')]")
}
+ def create(self, cr, uid, vals, context=None):
+ order = super(sale_order, self).create(cr, uid, vals, context=context)
+ section_id = self.browse(cr, uid, order, context=context).section_id
+ if section_id:
+ followers = [follow.id for follow in section_id.message_follower_ids]
+ self.message_subscribe(cr, uid, [order.id], followers, context=context)
+ return order
+
sale_order()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: