Checkpoint: Version finale avec support SMTP complet :
Fonctionnalités ajoutées : - Support SMTP Direct pour l'envoi d'emails (Gmail, Outlook, serveurs personnalisés) - Interface de configuration SMTP dans l'administration - Basculement automatique entre Resend API et SMTP Direct - Affichage du statut de configuration (Resend/SMTP, Simulation/Production) Corrections apportées : - Correction du bug de décalage horaire dans le formulaire d'édition des séquences - Ajout du menu de navigation sur la page Import Excel - Déplacement du menu Import Excel vers le bloc Configuration - Correction de la fonction upsertEmailConfig pour mettre à jour au lieu de créer des doublons - Correction du bug d'enregistrement des champs SMTP dans la base de données - Correction du problème de cache React Query qui gardait l'ancienne configuration - Invalidation automatique du cache après enregistrement de la configuration Scripts de déploiement : - Scripts de mise à jour VPS avec sauvegarde automatique - Package de déploiement prêt pour le serveur de production
This commit is contained in:
@@ -13,6 +13,7 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@
|
||||
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs";
|
||||
|
||||
export default function AdminEmailConfig() {
|
||||
const utils = trpc.useUtils();
|
||||
const { data: config, isLoading, refetch } = trpc.emailConfig.get.useQuery();
|
||||
const upsertMutation = trpc.emailConfig.upsert.useMutation();
|
||||
const testEmailMutation = trpc.emailConfig.testEmail.useMutation();
|
||||
@@ -56,9 +57,11 @@ export default function AdminEmailConfig() {
|
||||
e.preventDefault();
|
||||
|
||||
upsertMutation.mutate(formData, {
|
||||
onSuccess: () => {
|
||||
onSuccess: async () => {
|
||||
toast.success("Configuration enregistrée avec succès");
|
||||
refetch();
|
||||
// Invalider le cache et forcer le rechargement
|
||||
await utils.emailConfig.get.invalidate();
|
||||
await refetch();
|
||||
},
|
||||
onError: (error) => {
|
||||
toast.error(`Erreur: ${error.message}`);
|
||||
|
||||
Reference in New Issue
Block a user