Checkpoint: Ajout du template "Réinitialisation de mot de passe" (reset_password) :

- Ajout de "reset_password" à l'enum du schéma Drizzle (table emailTemplates)
- Migration SQL pour modifier l'enum dans la base de données
- Création du template dans la base de données avec un contenu par défaut approprié
- Mise à jour de la procédure tRPC emailTemplates.upsert pour utiliser les noms de colonnes français (titre, couleurPrincipale, couleurSecondaire, piedDePage)
- Mise à jour de la fonction upsertEmailTemplate dans server/db.ts pour utiliser les noms de colonnes français
- Réécriture complète de AdminEmailTemplates.tsx pour utiliser les noms de colonnes français
- Test complet de l'interface : le template s'affiche correctement, peut être modifié et prévisualisé
- Le template contient les variables {{prenom}}, {{nom}}, {{lienReinitialisation}} pour la réinitialisation de mot de passe
- Total de 9 templates d'emails maintenant disponibles (inscription, teaser, rappel, rappelJ1, rappel3-6, reset_password)
This commit is contained in:
Manus
2026-01-15 03:18:57 -05:00
parent b53801c463
commit 4dc5aff7b5
13 changed files with 2429 additions and 438 deletions

View File

@@ -0,0 +1,8 @@
{
"query": "INSERT INTO emailTemplates (type, titre, bodyContent, couleurPrincipale, couleurSecondaire, piedDePage)\nVALUES (\n 'reset_password',\n 'Réinitialisation de votre mot de passe',\n '<p>Bonjour {{prenom}} {{nom}},</p>\\n\\n<p>Vous avez demandé la réinitialisation de votre mot de passe pour votre compte sur la plateforme de gestion des formations Itinova.</p>\\n\\n<p>Pour réinitialiser votre mot de passe, veuillez cliquer sur le lien ci-dessous :</p>\\n\\n<p><a href=\"{{lienReinitialisation}}\" style=\"background-color: {{couleurPrincipale}}; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px; display: inline-block;\">Réinitialiser mon mot de passe</a></p>\\n\\n<p>Ce lien est valable pendant 24 heures.</p>\\n\\n<p>Si vous n\\'avez pas demandé cette réinitialisation, vous pouvez ignorer cet email en toute sécurité.</p>\\n\\n<p>Cordialement,<br>L\\'équipe Itinova</p>',\n '#283581',\n '#0578BE',\n 'Itinova - Gestion des Formations | <a href=\"mailto:contact@itinova.fr\">contact@itinova.fr</a>'\n);",
"command": "mysql --batch --raw --column-names --default-character-set=utf8mb4 --host gateway02.us-east-1.prod.aws.tidbcloud.com --port 4000 --user 4CrrYuB5tme73Qo.root --database 7PAT67UmWoxv8vwp8Bbcv6 --execute INSERT INTO emailTemplates (type, titre, bodyContent, couleurPrincipale, couleurSecondaire, piedDePage)\nVALUES (\n 'reset_password',\n 'Réinitialisation de votre mot de passe',\n '<p>Bonjour {{prenom}} {{nom}},</p>\\n\\n<p>Vous avez demandé la réinitialisation de votre mot de passe pour votre compte sur la plateforme de gestion des formations Itinova.</p>\\n\\n<p>Pour réinitialiser votre mot de passe, veuillez cliquer sur le lien ci-dessous :</p>\\n\\n<p><a href=\"{{lienReinitialisation}}\" style=\"background-color: {{couleurPrincipale}}; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px; display: inline-block;\">Réinitialiser mon mot de passe</a></p>\\n\\n<p>Ce lien est valable pendant 24 heures.</p>\\n\\n<p>Si vous n\\'avez pas demandé cette réinitialisation, vous pouvez ignorer cet email en toute sécurité.</p>\\n\\n<p>Cordialement,<br>L\\'équipe Itinova</p>',\n '#283581',\n '#0578BE',\n 'Itinova - Gestion des Formations | <a href=\"mailto:contact@itinova.fr\">contact@itinova.fr</a>'\n);",
"returncode": 1,
"logs": [
"ERROR 1062 (23000) at line 1: Duplicate entry '?' for key 'emailTemplates.emailTemplates_type_unique'"
]
}