diff --git a/client/src/pages/AdminUsers.tsx b/client/src/pages/AdminUsers.tsx index fb0b1a0..d2ed6d2 100644 --- a/client/src/pages/AdminUsers.tsx +++ b/client/src/pages/AdminUsers.tsx @@ -371,9 +371,10 @@ export default function AdminUsers() { variant="ghost" size="sm" onClick={() => handleDelete(user)} - title="Supprimer" + title={user.username === "adminServFormation" ? "Cet utilisateur ne peut pas être supprimé" : "Supprimer"} + disabled={user.username === "adminServFormation"} > - + @@ -483,7 +484,9 @@ export default function AdminUsers() { Modifier l'utilisateur - Modifiez les informations de l'utilisateur + {selectedUser?.username === "adminServFormation" + ? "Seul le mot de passe peut être modifié pour cet utilisateur" + : "Modifiez les informations de l'utilisateur"} @@ -495,6 +498,8 @@ export default function AdminUsers() { value={editForm.name} onChange={(e) => setEditForm({ ...editForm, name: e.target.value })} placeholder="Nom de l'utilisateur" + disabled={selectedUser?.username === "adminServFormation"} + className={selectedUser?.username === "adminServFormation" ? "bg-gray-100 cursor-not-allowed" : ""} /> @@ -506,6 +511,8 @@ export default function AdminUsers() { value={editForm.email} onChange={(e) => setEditForm({ ...editForm, email: e.target.value })} placeholder="email@exemple.com" + disabled={selectedUser?.username === "adminServFormation"} + className={selectedUser?.username === "adminServFormation" ? "bg-gray-100 cursor-not-allowed" : ""} /> @@ -516,8 +523,12 @@ export default function AdminUsers() { value={editForm.username} onChange={(e) => setEditForm({ ...editForm, username: e.target.value })} placeholder="Identifiant unique pour la connexion" + disabled={selectedUser?.username === "adminServFormation"} + className={selectedUser?.username === "adminServFormation" ? "bg-gray-100 cursor-not-allowed" : ""} /> -

Laissez vide pour ne pas modifier

+ {selectedUser?.username !== "adminServFormation" && ( +

Laissez vide pour ne pas modifier

+ )}
diff --git a/todo.md b/todo.md index cad8cd6..910977b 100644 --- a/todo.md +++ b/todo.md @@ -392,3 +392,10 @@ - [ ] Afficher l'identifiant de connexion dans la liste des utilisateurs - [ ] Permettre la modification de l'identifiant et du mot de passe dans la fenêtre d'édition - [x] Tester les modifications + +## Utilisateur administrateur spécial + +- [x] Créer l'utilisateur "adminServFormation" avec mot de passe "Itinova69!" dans la base de données +- [x] Modifier l'interface pour désactiver le bouton de suppression pour cet utilisateur +- [x] Modifier le formulaire d'édition pour rendre les champs nom, email et identifiant en lecture seule pour cet utilisateur +- [x] Tester les modifications