From de641e80f0c819ada5d9b782ab19e0b4de5d12e8 Mon Sep 17 00:00:00 2001 From: Mathis Date: Sun, 13 Apr 2025 16:02:18 +0200 Subject: [PATCH] Lien avec le backend ajout des utilisateurs admin --- .../java/com/example/starter/AuthHandler.java | 2 +- Front-end/src/pages/Admin/User.jsx | 354 +++++++++--------- Front-end/src/pages/Signup.jsx | 1 - 3 files changed, 188 insertions(+), 169 deletions(-) diff --git a/Back-end/src/main/java/com/example/starter/AuthHandler.java b/Back-end/src/main/java/com/example/starter/AuthHandler.java index 7021f26..fa82816 100644 --- a/Back-end/src/main/java/com/example/starter/AuthHandler.java +++ b/Back-end/src/main/java/com/example/starter/AuthHandler.java @@ -140,7 +140,7 @@ public class AuthHandler { if (surname != null) claims.put("surname", surname); // Attribution du rôle en fonction des points - String role = "user"; // Rôle par défaut + String role = "user"; if (nbPointsUser >= 200) { role = "admin"; } else if (nbPointsUser >= 100) { diff --git a/Front-end/src/pages/Admin/User.jsx b/Front-end/src/pages/Admin/User.jsx index b358983..e14608e 100644 --- a/Front-end/src/pages/Admin/User.jsx +++ b/Front-end/src/pages/Admin/User.jsx @@ -21,27 +21,24 @@ function User() { const handleAddUser = (e) => { e.preventDefault(); - const newUser = { - id: Date.now(), - name, - surname, - pseudo, - email, - password, - gender, - accessLevel: "User", - points: 0, - }; - setUsers([...users, newUser]); - logAction(name, "Utilisateur ajouté"); - - // Réinitialisation du formulaire - setname(""); - setSurname(""); - setPseudo(""); - setEmail(""); - setPassword(""); - setGender("Homme"); + axios + .post(`${API_BASE_URL}/signup`, { + name, + surname, + pseudo, + email, + password, + confirmPassword:password, + gender, + }) + .then((response) => { + logAction(name, "Utilisateur ajouté"); + alert("Ajout de l'utilisateur réussit !"); + window.location.reload(); + }) + .catch((error) => { + alert("Erreur lors de l'ajout de l'utilisateur !"); + }); }; useEffect(() => { @@ -68,7 +65,10 @@ function User() { window.location.reload(); }) .catch((error) => { - console.error("Erreur lors de la suppression de l'utilisateur :", error); + console.error( + "Erreur lors de la suppression de l'utilisateur :", + error + ); }); logAction(user.name, "Utilisateur supprimé"); @@ -106,7 +106,10 @@ function User() { alert("Il y a eu une erreur dans le changement de niveau !"); console.error("Erreur lors du changement de niveau :", error); }); - logAction(user.name, `Niveau d'accès changé de ${oldLevel} à ${newLevel}`); + logAction( + user.name, + `Niveau d'accès changé de ${oldLevel} à ${newLevel}` + ); } return user; }) @@ -161,164 +164,181 @@ function User() { return (
-
+

Gestion des utilisateurs

Gérez les utilisateurs à partir de ce panneau.

-
- setname(e.target.value)} - required - /> - setSurname(e.target.value)} - required - /> - setPseudo(e.target.value)} - required - /> - setEmail(e.target.value)} - required - /> - setPassword(e.target.value)} - required - /> - - + +
+
+ setname(e.target.value)} + required + /> +
+
+ setSurname(e.target.value)} + required + /> +
+
+ setPseudo(e.target.value)} + required + /> +
+
+ setEmail(e.target.value)} + required + /> +
+
+ setPassword(e.target.value)} + required + /> +
+
+ +
+
+
+ +
- - - - - - - - - - - - - - - - {users.map((user) => ( - - - - - - - - - - - ))} - -
NomPrénomPseudoEmailGenreNiveau d'accèsPointsActions
{user.name}{user.surname}{user.pseudo}{user.email}{user.gender} - - - - setPointsInput({ - ...pointsInput, - [user.id]: e.target.value, - }) - } - /> - - - -
+ {/*Tableau utilisateur*/} +
+ + + + + + + + + + + + + + + {users.map((user) => ( + + + + + + + + + + + ))} + +
NomPrénomPseudoEmailGenreNiveau d'accèsPointsActions
{user.name}{user.surname}{user.pseudo}{user.email}{user.gender} + + + + setPointsInput({ + ...pointsInput, + [user.id]: e.target.value, + }) + } + /> + + + +
+

Historique des connexions et journal des logs{" "}

- - - - - - - - - - {logs.map((log) => ( - - - - +
+
NomActionTimestamp
{log.name}{log.action}{log.timestamp}
+ + + + + - ))} - -
NomActionTimestamp
+ + + {logs.map((log) => ( + + {log.name} + {log.action} + {log.timestamp} + + ))} + + +