diff --git a/client/src/pages/AdminFormations.tsx b/client/src/pages/AdminFormations.tsx index 6611efb..98f59cf 100644 --- a/client/src/pages/AdminFormations.tsx +++ b/client/src/pages/AdminFormations.tsx @@ -13,8 +13,11 @@ import { Plus, Pencil, Trash2, ExternalLink, Search, SlidersHorizontal } from "l import { useState, useMemo } from "react"; import { toast } from "sonner"; import { Skeleton } from "@/components/ui/skeleton"; +import { useAuth } from "@/_core/hooks/useAuth"; export default function AdminFormations() { + const { user } = useAuth(); + const isAdmin = user?.role === 'admin'; const [open, setOpen] = useState(false); const [editingId, setEditingId] = useState(null); const [searchTerm, setSearchTerm] = useState(""); @@ -130,12 +133,14 @@ export default function AdminFormations() { setOpen(isOpen); if (!isOpen) resetForm(); }}> - - - + {isAdmin && ( + + + + )}
@@ -301,22 +306,24 @@ export default function AdminFormations() { -
- - -
+ {isAdmin && ( +
+ + +
+ )}
))} diff --git a/client/src/pages/AdminSequences.tsx b/client/src/pages/AdminSequences.tsx index 347b6a6..68abccb 100644 --- a/client/src/pages/AdminSequences.tsx +++ b/client/src/pages/AdminSequences.tsx @@ -15,6 +15,7 @@ import CapacityProgressBar from "@/components/CapacityProgressBar"; import { toast } from "sonner"; import { useLocation } from "wouter"; import { format } from "date-fns"; +import { useAuth } from "@/_core/hooks/useAuth"; interface DateFormation { dateDebut: string; @@ -23,6 +24,8 @@ interface DateFormation { } export default function AdminSequences() { + const { user } = useAuth(); + const isAdmin = user?.role === 'admin'; const [, setLocation] = useLocation(); const [isCreateOpen, setIsCreateOpen] = useState(false); const [isEditOpen, setIsEditOpen] = useState(false); @@ -457,12 +460,14 @@ export default function AdminSequences() { )} - - - + {isAdmin && ( + + + + )} Créer une nouvelle séquence @@ -892,13 +897,15 @@ export default function AdminSequences() { > - + {isAdmin && ( + + )} - + {isAdmin && ( + + )} diff --git a/todo.md b/todo.md index 378cc95..9a6c37e 100644 --- a/todo.md +++ b/todo.md @@ -1198,3 +1198,4 @@ - [ ] Corriger l'erreur dans le fichier ICS qui empêche l'importation dans Outlook - [ ] Ajouter validation date fin > date début dans la boîte de dialogue de modification des séquences - [x] Ajouter une validation frontend en temps réel dans les champs de date pour afficher un message d'erreur immédiat +- [ ] Restreindre les droits des formateurs (pas de modification/suppression de formations et séquences)