Checkpoint: Correction du bug de remplacement des tags dans les emails de teaser et rappel :
Problème corrigé :
- Les tags {{nomFormation}}, {{nomSequence}}, etc. n'étaient pas remplacés dans les emails de teaser et rappel
- Les fonctions sendTeaserEmail et sendRappelJ7Email ne passaient pas les variables au générateur de template
Solution appliquée :
- Ajout de l'objet variables dans sendTeaserEmail avec : nomApprenant, prenomApprenant, nomFormation, nomSequence, dateDebut, dateFin
- Ajout de l'objet variables dans sendRappelJ7Email avec les mêmes variables plus le lieu
- Les variables sont maintenant correctement transmises à getEmailTemplate() pour le remplacement
Variables disponibles dans les templates :
- {{nomApprenant}} - Nom de l'apprenant
- {{prenomApprenant}} - Prénom de l'apprenant
- {{nomFormation}} - Nom de la formation
- {{nomSequence}} - Nom de la séquence
- {{dateDebut}} - Date de début formatée
- {{dateFin}} - Date de fin formatée
- {{lieu}} - Lieu de la formation (rappel uniquement)
This commit is contained in:
@@ -187,10 +187,19 @@ export async function sendTeaserEmail(params: {
|
|||||||
<p>À très bientôt !</p>
|
<p>À très bientôt !</p>
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
const variables = {
|
||||||
|
nomApprenant: params.apprenantNom,
|
||||||
|
prenomApprenant: params.apprenantPrenom,
|
||||||
|
nomFormation: params.formationNom,
|
||||||
|
nomSequence: params.sequenceNom,
|
||||||
|
dateDebut: params.dates[0]?.dateDebut.toLocaleDateString('fr-FR') || '',
|
||||||
|
dateFin: params.dates[params.dates.length - 1]?.dateFin.toLocaleDateString('fr-FR') || '',
|
||||||
|
};
|
||||||
|
|
||||||
return sendEmail({
|
return sendEmail({
|
||||||
to: params.apprenantEmail,
|
to: params.apprenantEmail,
|
||||||
subject: `Votre formation ${params.formationNom} approche !`,
|
subject: `Votre formation ${params.formationNom} approche !`,
|
||||||
html: await getEmailTemplate(content, 'teaser'),
|
html: await getEmailTemplate(content, 'teaser', variables),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -246,10 +255,20 @@ export async function sendRappelJ7Email(params: {
|
|||||||
<p>À très bientôt !</p>
|
<p>À très bientôt !</p>
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
const variables = {
|
||||||
|
nomApprenant: params.apprenantNom,
|
||||||
|
prenomApprenant: params.apprenantPrenom,
|
||||||
|
nomFormation: params.formationNom,
|
||||||
|
nomSequence: params.sequenceNom,
|
||||||
|
dateDebut: params.dates[0]?.dateDebut.toLocaleDateString('fr-FR') || '',
|
||||||
|
dateFin: params.dates[params.dates.length - 1]?.dateFin.toLocaleDateString('fr-FR') || '',
|
||||||
|
lieu: params.lieu,
|
||||||
|
};
|
||||||
|
|
||||||
return sendEmail({
|
return sendEmail({
|
||||||
to: params.apprenantEmail,
|
to: params.apprenantEmail,
|
||||||
subject: `Rappel J-7 : ${params.formationNom}`,
|
subject: `Rappel J-7 : ${params.formationNom}`,
|
||||||
html: await getEmailTemplate(content, 'rappel'),
|
html: await getEmailTemplate(content, 'rappel', variables),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
7
todo.md
7
todo.md
@@ -786,3 +786,10 @@
|
|||||||
- [x] Ajouter des logs pour diagnostiquer l'envoi (console.log dans routers.ts)
|
- [x] Ajouter des logs pour diagnostiquer l'envoi (console.log dans routers.ts)
|
||||||
- [x] Ajouter un message de retour avec le nombre d'emails envoyés
|
- [x] Ajouter un message de retour avec le nombre d'emails envoyés
|
||||||
- [x] Tester l'envoi de rappel et vérifier les logs (fonctionne correctement)
|
- [x] Tester l'envoi de rappel et vérifier les logs (fonctionne correctement)
|
||||||
|
|
||||||
|
## Bug tag {nom de la formation} non remplacé dans email teaser
|
||||||
|
|
||||||
|
- [x] Trouver où le template d'email est généré (emailTemplateGenerator.ts)
|
||||||
|
- [x] Vérifier le système de remplacement des tags ({{nomFormation}})
|
||||||
|
- [x] Corriger le remplacement du tag (ajout des variables dans sendTeaserEmail et sendRappelJ7Email)
|
||||||
|
- [x] Corriger et préparer pour test en production
|
||||||
|
|||||||
Reference in New Issue
Block a user