Checkpoint: Correction du bug d'enregistrement de la configuration SMTP :
**Problème identifié** : La mutation tRPC `emailConfig.upsert` n'acceptait pas les champs SMTP (smtpHost, smtpPort, smtpSecure, smtpUser, smtpPassword) dans son schéma de validation Zod, ce qui empêchait l'enregistrement de la configuration SMTP. **Solution appliquée** : - Ajout des 5 champs SMTP dans le schéma d'input de la mutation `upsert` dans `server/routers.ts` - Tous les champs SMTP sont définis comme nullable et optional pour permettre la flexibilité - Types corrects : smtpPort (number), smtpSecure (enum), autres (string) **Résultat** : La configuration SMTP peut maintenant être enregistrée correctement dans la base de données. Les champs sont transmis du frontend au backend et stockés via la fonction `upsertEmailConfig`.
This commit is contained in:
@@ -862,6 +862,12 @@ export const appRouter = router({
|
||||
fromName: z.string(),
|
||||
mode: z.enum(["simulation", "production"]),
|
||||
domainVerified: z.boolean(),
|
||||
// Champs SMTP
|
||||
smtpHost: z.string().nullable().optional(),
|
||||
smtpPort: z.number().nullable().optional(),
|
||||
smtpSecure: z.enum(["none", "tls", "ssl"]).nullable().optional(),
|
||||
smtpUser: z.string().nullable().optional(),
|
||||
smtpPassword: z.string().nullable().optional(),
|
||||
}))
|
||||
.mutation(async ({ input }) => {
|
||||
await db.upsertEmailConfig(input);
|
||||
|
||||
6
todo.md
6
todo.md
@@ -738,3 +738,9 @@
|
||||
- [x] Modifier emailSender.ts pour supporter SMTP
|
||||
- [x] Ajouter l'interface SMTP dans AdminEmailConfig.tsx
|
||||
- [x] Tester l'envoi d'emails via SMTP (interface visible dans Configuration SMTP)
|
||||
|
||||
## Bug enregistrement configuration SMTP
|
||||
|
||||
- [x] Vérifier les procédures tRPC emailConfig
|
||||
- [x] Corriger la mutation upsert pour supporter les champs SMTP
|
||||
- [x] Tester l'enregistrement de la configuration SMTP (champs ajoutés dans l'input tRPC)
|
||||
|
||||
Reference in New Issue
Block a user