Modifier les modèles (templates) de mail de La Louve


#1

Hello tout le monde !

On a un soucis à Supercoop et peut être avez vous la réponse…?
Nous utilisons des modules odoo qui définissent des templates de mails et les envoient, par exemple coop_membership qui en a pas mal.
Dans ces modules, les templates d’email contiennent les infos de La Louve (certaines adresses mail expéditeurs ou informations propres à La Louve dans les corps de mail tout simplement). Nous les avons donc modifiés via l’interface UI d’Odoo (Technique > Courriels > Modèles). Mais il semblerait que ces modifs ne soient pas super pérennes, elles ont déjà sauté plusieurs fois pour remettre les templates d’origine (on suppose lors de mises à jour du module mais on a du mal à comprendre exactement quand/comment et à le reproduire).

Avez vous déjà eu ce problème ? Savez vous ce qui le provoque ? Et surtout savez vous quelle est la bonne façon de modifier ces templates sans risquer qu’ils ne soient écrasés par la magie d’Odoo régulièrement ?

Si oui, gratitude éternelle et arcs en ciel sur vos coops :)))


#2

Bonjour Camille,

Effectivement le module coop_membership par exemple va écraser à chaque mise à jour tous les templates d’e-mail, et il y a à l’intérieur de nombreuses références à La Louve.
Ces modèle de mails ont ensuite un identifiant externe qui est utilisé dans le code Python pour utiliser tel ou tel template en fonction de l’action.

Il y a donc plusieurs possibilités pour contourner ce problème :

  1. Le plus simple, mais pas sûr du temps que ça prendra pour être corrigé : Ouvrir une Issue ou une Pull Request sur le Github awesomefoodcoops pour demander d’ajouter un noupdate=“1” sur le fichier de modèle d’e-mails (intercoop_addons/coop_membership/data/email_template_data.xml)

  2. Créer un nouveau module Odoo avec de nouveaux templates adaptés à vos besoins (ou plus génériques avec un noupdate=“1”) et reprendre aussi les fonctions Python pour aller chercher vos propres modèles

  3. Le plus propre (mais pas le plus simple à faire) : ajouter un champ permettant de sélectionner le modèle à utiliser dans le code Python afin de pouvoir conserver les modèles par défaut de La Louve et de pouvoir sélectionner des modèles créés manuellement via l’interface web Odoo pour chaque Coop