[FIX] mail, various: remove outdated "render_safe" rendering option

Render safe option was used with Jinja rendering to tell Jinja that content
was safe and was not expected to be escaped. This was used notably in subject
as characters like ``&`` was escaped in email subject (e.g. `R&D News`).

This is now supported directly by the "inline template" rendering engine that
is used to render text-based templates since Odoo v15 [1]. This option is not
supported by code anymore anyway and leads to nothing.

Task-2088884 (MailComposer: Onchange to editable computed stored)
Task-2710804 (MailThread Api Cleaning)

[1] See odoo/odoo@68182baff4

Prepares Task-2088884 (Mail: Composer Onchange to Editable Computed Stored)

Part-of: odoo/odoo#94660
This commit is contained in:
Thibault Delavallée
2022-06-27 16:25:54 +02:00
parent 6fec3e9091
commit 8cbac0506c
4 changed files with 3 additions and 4 deletions
-1
View File
@@ -193,7 +193,6 @@ class MailTemplate(models.Model):
for field in fields:
generated_field_values = template._render_field(
field, template_res_ids,
options={'render_safe': field == 'subject'},
post_process=(field == 'body_html')
)
for res_id, field_value in generated_field_values.items():
+1 -1
View File
@@ -602,7 +602,7 @@ class MailComposer(models.TransientModel):
multi_mode = False
res_ids = [res_ids]
subjects = self._render_field('subject', res_ids, options={"render_safe": True})
subjects = self._render_field('subject', res_ids)
# We want to preserve comments in emails so as to keep mso conditionals
bodies = self._render_field('body', res_ids, post_process=True, options={'preserve_comments': self.composition_mode == 'mass_mail'})
emails_from = self._render_field('email_from', res_ids)
+1 -1
View File
@@ -210,7 +210,7 @@ class SurveyInvite(models.TransientModel):
def _send_mail(self, answer):
""" Create mail specific for recipient containing notably its access token """
subject = self._render_field('subject', answer.ids, options={'render_safe': True})[answer.id]
subject = self._render_field('subject', answer.ids)[answer.id]
body = self._render_field('body', answer.ids, post_process=True)[answer.id]
# post the message
mail_values = {
@@ -66,7 +66,7 @@ class SlideChannelInvite(models.TransientModel):
def _prepare_mail_values(self, slide_channel_partner):
""" Create mail specific for recipient """
subject = self._render_field('subject', slide_channel_partner.ids, options={'render_safe': True})[slide_channel_partner.id]
subject = self._render_field('subject', slide_channel_partner.ids)[slide_channel_partner.id]
body = self._render_field('body', slide_channel_partner.ids, post_process=True)[slide_channel_partner.id]
# post the message
mail_values = {