diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index e5c398d99c8..f3530800824 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -304,14 +304,14 @@ 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) - self._subscribe_salesteam_followers_to_lead(cr, uid, obj_id, context=context) + self._subscribe_salesteam_followers_to_lead(cr, uid, [obj_id], context=context) self.create_send_note(cr, uid, [obj_id], context=context) return obj_id def _subscribe_salesteam_followers_to_lead(self, cr, uid, obj_id, context=None): follower_obj = self.pool.get('mail.followers') subtype_obj = self.pool.get('mail.message.subtype') - section_id = self.browse(cr, uid, obj_id, context=context).section_id + section_id = self.browse(cr, uid, obj_id[0], context=context).section_id if section_id: followers = [follow.id for follow in section_id.message_follower_ids] lead_subtype_ids = subtype_obj.search(cr, uid, ['|', ('res_model', '=', False), ('res_model', '=', self._name)], context=context) @@ -323,7 +323,7 @@ class crm_lead(base_stage, format_address, osv.osv): continue salesteam_subtype_names = [salesteam_subtype.name for salesteam_subtype in follower.subtype_ids] lead_subtype_ids = [lead_subtype.id for lead_subtype in lead_subtypes if lead_subtype.name in salesteam_subtype_names] - self.message_subscribe(cr, uid, [obj_id], [follower.partner_id.id], subtype_ids=lead_subtype_ids, context=context) + self.message_subscribe(cr, uid, obj_id, [follower.partner_id.id], subtype_ids=lead_subtype_ids, context=context) def onchange_stage_id(self, cr, uid, ids, stage_id, context=None): if not stage_id: @@ -928,8 +928,7 @@ class crm_lead(base_stage, format_address, osv.osv): vals['probability'] = stage.probability res = super(crm_lead,self).write(cr, uid, ids, vals, context) if vals.get('section_id'): - for id in ids: - self._subscribe_salesteam_followers_to_lead(cr, uid, id, context=context) + self._subscribe_salesteam_followers_to_lead(cr, uid, ids, context=context) return res # ---------------------------------------- diff --git a/addons/sale_crm/sale_crm.py b/addons/sale_crm/sale_crm.py index 764d5bc2023..e2e380d4ec3 100644 --- a/addons/sale_crm/sale_crm.py +++ b/addons/sale_crm/sale_crm.py @@ -31,13 +31,13 @@ class sale_order(osv.osv): def create(self, cr, uid, vals, context=None): order = super(sale_order, self).create(cr, uid, vals, context=context) - self._subscribe_salesteam_followers_to_order(cr, uid, order, context=context) + self._subscribe_salesteam_followers_to_order(cr, uid, [order], context=context) return order def _subscribe_salesteam_followers_to_order(self, cr, uid, order, context=None): follower_obj = self.pool.get('mail.followers') subtype_obj = self.pool.get('mail.message.subtype') - section_id = self.browse(cr, uid, order, context=context).section_id + section_id = self.browse(cr, uid, order[0], context=context).section_id if section_id: followers = [follow.id for follow in section_id.message_follower_ids] order_subtype_ids = subtype_obj.search(cr, uid, ['|', ('res_model', '=', False), ('res_model', '=', self._name)], context=context) @@ -50,13 +50,12 @@ class sale_order(osv.osv): continue salesteam_subtype_names = [salesteam_subtype.name for salesteam_subtype in follower.subtype_ids] order_subtype_ids = [order_subtype.id for order_subtype in order_subtypes if order_subtype.name in salesteam_subtype_names] - self.message_subscribe(cr, uid, [order], [follower.partner_id.id], subtype_ids=order_subtype_ids, context=context) + self.message_subscribe(cr, uid, order, [follower.partner_id.id], subtype_ids=order_subtype_ids, context=context) def write(self, cr, uid, ids, vals, context=None): res = super(sale_order, self).write(cr, uid, ids, vals, context=context) if vals.get('section_id'): - for id in ids: - self._subscribe_salesteam_followers_to_order(cr, uid, id, context=context) + self._subscribe_salesteam_followers_to_order(cr, uid, ids, context=context) return res sale_order()