Checkpoint: Ajout du bouton "Tester le rappel" dans AdminSequences.tsx :
- Ajout de la mutation testerRappelMutation connectée à la procédure tRPC rappels.testerRappel - Ajout de l'icône Send dans les imports - Ajout du bouton dans la colonne Actions du tableau des séquences (entre Edit et Delete) - Le bouton envoie un email de test à l'administrateur avec les données de la séquence sélectionnée - Validation : le bouton est désactivé si la séquence n'a pas de dates configurées - Feedback utilisateur : toast de succès ou d'erreur après l'envoi - Mise à jour du fichier todo.md pour marquer la tâche comme terminée
This commit is contained in:
@@ -9,7 +9,7 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@
|
||||
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table";
|
||||
import { Badge } from "@/components/ui/badge";
|
||||
import { trpc } from "@/lib/trpc";
|
||||
import { Calendar, Edit, Eye, Plus, Trash2, X, Bell, Maximize2, Minimize2 } from "lucide-react";
|
||||
import { Calendar, Edit, Eye, Plus, Trash2, X, Bell, Maximize2, Minimize2, Send } from "lucide-react";
|
||||
import FormateurCombobox from "@/components/FormateurCombobox";
|
||||
import CapacityProgressBar from "@/components/CapacityProgressBar";
|
||||
import { toast } from "sonner";
|
||||
@@ -87,6 +87,15 @@ export default function AdminSequences() {
|
||||
},
|
||||
});
|
||||
|
||||
const testerRappelMutation = trpc.rappels.testerRappel.useMutation({
|
||||
onSuccess: () => {
|
||||
toast.success("Email de test envoyé avec succès");
|
||||
},
|
||||
onError: (error) => {
|
||||
toast.error(`Erreur lors de l'envoi du test : ${error.message}`);
|
||||
},
|
||||
});
|
||||
|
||||
const resetForm = () => {
|
||||
setFormData({
|
||||
formationId: "",
|
||||
@@ -821,6 +830,21 @@ export default function AdminSequences() {
|
||||
>
|
||||
<Edit className="h-4 w-4" />
|
||||
</Button>
|
||||
<Button
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
onClick={() => {
|
||||
if (sequence.dates && sequence.dates.length > 0) {
|
||||
testerRappelMutation.mutate({ sequenceId: sequence.id });
|
||||
} else {
|
||||
toast.error("Cette séquence n'a pas de dates configurées");
|
||||
}
|
||||
}}
|
||||
disabled={testerRappelMutation.isPending}
|
||||
title="Tester l'envoi d'un rappel"
|
||||
>
|
||||
<Send className="h-4 w-4 text-green-600" />
|
||||
</Button>
|
||||
<Button
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
|
||||
Reference in New Issue
Block a user