Projet

Général

Profil

Development #30184

Pouvoir définir un préfixe global pour les sujets de tous les mails

Ajouté par Benjamin Dauvergne il y a plus de 5 ans. Mis à jour il y a environ 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
29 janvier 2019
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Comme EMAIL_SUBJECT_PREFIX coté Django (et le plus simple ce serait certainement d'extraire la même variable de setting que coté Django et de mettre ça ensuite dans site-options.cfg).

PS: voir plan décrit plus bas.


Fichiers


Demandes liées

Lié à w.c.s. - Development #18541: Passer par un template pour le contenu du sujet des emailsFermé08 septembre 2017

Actions

Révisions associées

Révision ddc1437a (diff)
Ajouté par Frédéric Péters il y a environ 5 ans

misc: pass email subjects through a template (#30184)

Historique

#1

Mis à jour par Benjamin Dauvergne il y a plus de 5 ans

  • Sujet changé de Pouvoir définir un préfixe global pour tous les mails à Pouvoir définir un préfixe global pour les sujets de tous les mails
#3

Mis à jour par Frédéric Péters il y a plus de 5 ans

J'écrivais dans l'autre ticket ceci (avant de valider et qu'il y ait eu autre chose entre temps), qui est plutôt différent :

Si jamais ça intéressait quelqu'un, le "plan" sur lequel je ne suis jamais avancé, ce serait dans publik-base-theme créer un templates/emails/subject.txt, qui soit :

{% firstof global_title site_name site "Compte Citoyen" %} : {% block email-subject %}{% endblock %}

et que **_subject.txt l'utilise; puis modifier w.c.s. pour également passer par là.

Il y aurait genre de base :

--- a/wcs/qommon/emails.py
+++ b/wcs/qommon/emails.py
@@ -189,6 +189,9 @@ def email(subject, mail_body, email_rcpt, replyto = None, bcc = None,

     context = get_publisher().get_substitution_variables()
     context['email_signature'] = footer
+    context['subject'] = subject
+
+    subject = render_to_string('qommon/email_subject.txt', context)

     # handle action links/buttons
     button_re = re.compile(r'---===BUTTON:(?P<token>[a-zA-Z0-9]*):(?P<label>.*?)===---')

avec qommon/email_subject.txt {{ subject }}; et dans publik-base-theme {% extends "emails/subject.txt" %}{% block email-subject %}{{ subject }}{% endblock %}.

(et en écrivant ça presque tout est déjà écrit, reste à sans doute taper des |safe et à faire quelques tests. Au pire je dois pouvoir faire ça à un moment semaine prochaine.

#4

Mis à jour par Benjamin Dauvergne il y a plus de 5 ans

  • Description mis à jour (diff)
#5

Mis à jour par Frédéric Péters il y a environ 5 ans

#6

Mis à jour par Benjamin Dauvergne il y a environ 5 ans

  • Statut changé de Solution proposée à Solution validée

Ack. Mais question: n'y aurait-il pas le besoin comme dans beaucoup de template Django pour les mails "texte" de mettre un "{% autoescape off %}" ? voir de le forcer au niveau de l'engine si c'est possible pour ce rendu (rapidement cherché ça ne semble pas exister).

#7

Mis à jour par Frédéric Péters il y a environ 5 ans

Il y a un mark_safe pour ne pas exiger ça.

#8

Mis à jour par Frédéric Péters il y a environ 5 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit ddc1437a967b02b4851cca070c6c5694dd780e47
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sat Feb 2 15:32:31 2019 +0100

    misc: pass email subjects through a template (#30184)
#9

Mis à jour par Frédéric Péters il y a environ 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée
#10

Mis à jour par Frédéric Péters il y a plus de 4 ans

  • Lié à Development #18541: Passer par un template pour le contenu du sujet des emails ajouté

Formats disponibles : Atom PDF