summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDebauche Stéphane <std@odoo.com>2019-11-15 15:48:15 +0000
committerfw-bot <otis@odoo.com>2019-11-18 11:49:28 +0000
commita7d029afa715d4d6efa5a67d3a4cd1ff165370e8 (patch)
tree4c875b821a2b933ca01e7df1f9c5f9e8c0b1ff5e
parent6188378e57e4d74604a5b25c496700ef42b79650 (diff)
[FIX] crm_website: fix the type of a lead created with the contact form
Lead/Opportunity type ===================== In the settings, if ``group_use_leads`` is checked, we add the group ``use_leads`` to all users in the group ``base.group_user`` To know if the setting is checked, in the model ``crm.lead``, we compute this code, ``` self.env['res.users'].has_group('crm.group_use_lead') ``` In 12.0 ======= When we compute ``sudo``, we are as the admin user. The admin user is in the group ``base.group_user`` and so, he can be in the group ``use_leads``, so everything work fine. In 13.0 ======= When we perform a ``sudo``, we keep the same user. But the visitor is not in the group ``base.group_user`` (he is in the group ``base.group_public``) So, the visitor can never be in the group ``use_leads`` Fix === To fix it, we just need to compute the method ``has_group`` as the super user (which is in the group ``base.group_user``). ``` self.with_user(SUPERUSER_ID).env['res.users'].has_group('crm.group_use_lead') ``` Task #2124421 closes odoo/odoo#40418 X-original-commit: 8758bdc24297032ba8fd65f637a6990c6351dd27 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
-rw-r--r--addons/website_crm/models/crm_lead.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/addons/website_crm/models/crm_lead.py b/addons/website_crm/models/crm_lead.py
index dc929284842..4e62f808870 100644
--- a/addons/website_crm/models/crm_lead.py
+++ b/addons/website_crm/models/crm_lead.py
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
-from odoo import api, fields, models
+from odoo import api, fields, models, SUPERUSER_ID
class Lead(models.Model):
@@ -49,6 +49,7 @@ class Lead(models.Model):
request.website.crm_default_team_id.id
values['user_id'] = values.get('user_id') or \
request.website.crm_default_user_id.id
+ values['type'] = 'lead' if self.with_user(SUPERUSER_ID).env['res.users'].has_group('crm.group_use_lead') else 'opportunity'
return values