Skip to content
Snippets Groups Projects
Commit 74badbcb authored by daniquilez's avatar daniquilez
Browse files

apply linter corrections

parent ea7a5b21
No related branches found
No related tags found
2 merge requests!288[REL] Release Sprint + hotfix (11/12/23),!278Feature/hashed public form url
Pipeline #70499 passed
...@@ -308,7 +308,7 @@ class WebsiteCommunityData(http.Controller): ...@@ -308,7 +308,7 @@ class WebsiteCommunityData(http.Controller):
) )
def _is_lead_pack(self, lead_id, pack_tag_ext_id): def _is_lead_pack(self, lead_id, pack_tag_ext_id):
leads = request.env["crm.lead"].sudo().search([("id", "=", lead_id)]) leads = request.env["crm.lead"].sudo().search([("external_id", "=", lead_id)])
if leads: if leads:
lead = leads[0] lead = leads[0]
pack_tag = lead.tag_ids.filtered( pack_tag = lead.tag_ids.filtered(
...@@ -341,7 +341,7 @@ class WebsiteCommunityData(http.Controller): ...@@ -341,7 +341,7 @@ class WebsiteCommunityData(http.Controller):
return legal_forms return legal_forms
def _get_lead_values(self, lead_id): def _get_lead_values(self, lead_id):
leads = request.env["crm.lead"].sudo().search([("id", "=", lead_id)]) leads = request.env["crm.lead"].sudo().search([("external_id", "=", lead_id)])
lead_values = {"closed_lead": False} lead_values = {"closed_lead": False}
if leads: if leads:
lead = leads[0] lead = leads[0]
...@@ -472,21 +472,11 @@ class WebsiteCommunityData(http.Controller): ...@@ -472,21 +472,11 @@ class WebsiteCommunityData(http.Controller):
], ],
"global_error": True, "global_error": True,
} }
# lead_id numeric
try:
values["lead_id"] = int(values["lead_id"])
except ValueError:
return {
"error_msgs": [
_("lead_id must be defined on the url as a numeric value")
],
"global_error": True,
}
# lead_id not lost # lead_id not lost
related_lead = ( related_lead = (
request.env["crm.lead"] request.env["crm.lead"]
.sudo() .sudo()
.search([("active", "=", False), ("id", "=", values["lead_id"])]) .search([("active", "=", False), ("external_id", "=", values["lead_id"])])
) )
if related_lead: if related_lead:
return { return {
...@@ -498,7 +488,9 @@ class WebsiteCommunityData(http.Controller): ...@@ -498,7 +488,9 @@ class WebsiteCommunityData(http.Controller):
} }
# lead_id not found # lead_id not found
related_lead = ( related_lead = (
request.env["crm.lead"].sudo().search([("id", "=", values["lead_id"])]) request.env["crm.lead"]
.sudo()
.search([("external_id", "=", values["lead_id"])])
) )
if not related_lead: if not related_lead:
return { return {
...@@ -602,7 +594,9 @@ class WebsiteCommunityData(http.Controller): ...@@ -602,7 +594,9 @@ class WebsiteCommunityData(http.Controller):
def _process_lead_metadata(self, values): def _process_lead_metadata(self, values):
changed_data = [] changed_data = []
related_lead = ( related_lead = (
request.env["crm.lead"].sudo().search([("id", "=", values["lead_id"])]) request.env["crm.lead"]
.sudo()
.search([("external_id", "=", values["lead_id"])])
) )
for meta_key in _COMMUNITY_DATA__GENERAL_FIELDS.keys(): for meta_key in _COMMUNITY_DATA__GENERAL_FIELDS.keys():
if meta_key in values.keys(): if meta_key in values.keys():
......
from . import cm_coordinates_mixin from . import cm_coordinates_mixin
from . import external_id_mixin
from . import auth_oauth_provider from . import auth_oauth_provider
from . import account_chart_template from . import account_chart_template
from . import landing_page from . import landing_page
......
...@@ -11,7 +11,8 @@ _TAG_TYPE_VALUES = [ ...@@ -11,7 +11,8 @@ _TAG_TYPE_VALUES = [
class CrmLead(models.Model): class CrmLead(models.Model):
_inherit = "crm.lead" _name = "crm.lead"
_inherit = ["crm.lead", "external.id.mixin"]
lang = fields.Char(string="Language") lang = fields.Char(string="Language")
ce_tag_ids = fields.Many2many( ce_tag_ids = fields.Many2many(
......
import hashlib
from odoo import api, fields, models
class ExternalIdMixin(models.AbstractModel):
_name = "external.id.mixin"
_description = "External ID Mixin"
external_id = fields.Char(
string="External ID", compute="_compute_external_id", store=True
)
@api.depends("name")
def _compute_external_id(self):
for record in self:
record.external_id = hashlib.sha1(str(record.id).encode()).hexdigest()
...@@ -39,7 +39,9 @@ class CRMLeadService(Component): ...@@ -39,7 +39,9 @@ class CRMLeadService(Component):
self.env["crm.lead"].browse(crm_lead_id).add_follower() self.env["crm.lead"].browse(crm_lead_id).add_follower()
# send auto responder email and notify admins # send auto responder email and notify admins
email_values = {"email_to": params["email_from"], "lang": lang} email_values = {"email_to": params["email_from"]}
if lang:
email_values["lang"] = lang
if template_external_id: if template_external_id:
template = self.env.ref( template = self.env.ref(
...@@ -63,6 +65,7 @@ class CRMLeadService(Component): ...@@ -63,6 +65,7 @@ class CRMLeadService(Component):
return target_source_xml_id return target_source_xml_id
def _get_lang(self, params): def _get_lang(self, params):
lang = False
metadata = params["metadata"] metadata = params["metadata"]
for data in metadata: for data in metadata:
if data["key"] == "current_lang": if data["key"] == "current_lang":
......
...@@ -99,7 +99,10 @@ ...@@ -99,7 +99,10 @@
attrs="{'invisible':['|',('source_id', '!=', %(ce_source_creation_ce_proposal)d),('probability','>=',100)]}" attrs="{'invisible':['|',('source_id', '!=', %(ce_source_creation_ce_proposal)d),('probability','>=',100)]}"
/> />
</header> </header>
</xpath> </xpath>
<xpath expr="//field[@name='company_id']" position="after">
<field name="external_id" readonly="1" />
</xpath>
</field> </field>
</record> </record>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment