diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index 678db2ce347..4c784fcd398 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -320,6 +320,10 @@ class crm_lead(format_address, osv.osv): def on_change_user(self, cr, uid, ids, user_id, context=None): """ When changing the user, also set a team_id or restrict team id to the ones user_id is member of. """ + if user_id and context.get('team_id'): + team = self.pool['crm.team'].browse(cr, uid, context['team_id'], context=context) + if user_id in team.member_ids.ids: + return {} team_id = self.pool['crm.team']._get_default_team_id(cr, uid, user_id=user_id, context=context) if user_id and not team_id and self.pool['res.users'].has_group(cr, uid, 'base.group_multi_salesteams'): team_ids = self.pool.get('crm.team').search(cr, uid, ['|', ('user_id', '=', user_id), ('member_ids', '=', user_id)], context=context) diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 6567e482ae2..a2f272d7926 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -165,7 +165,7 @@ + context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'base.group_sale_salesman_all_leads'], 'team_id': team_id}"/>