diff --git a/Front-End/src/app/[locale]/parents/page.js b/Front-End/src/app/[locale]/parents/page.js index 993ef98..86841a2 100644 --- a/Front-End/src/app/[locale]/parents/page.js +++ b/Front-End/src/app/[locale]/parents/page.js @@ -27,12 +27,14 @@ export default function ParentHomePage() { const [reloadFetch, setReloadFetch] = useState(false); useEffect(() => { - const userIdFromSession = user.user_id; - setUserId(userIdFromSession); - fetchChildren(userIdFromSession, selectedEstablishmentId).then((data) => { - setChildren(data); - }); - setReloadFetch(false); + if (user !== null) { + const userIdFromSession = user.user_id; + setUserId(userIdFromSession); + fetchChildren(userIdFromSession, selectedEstablishmentId).then((data) => { + setChildren(data); + }); + setReloadFetch(false); + } }, [selectedEstablishmentId, reloadFetch]); function handleView(eleveId) { diff --git a/Front-End/src/components/ProtectedRoute.js b/Front-End/src/components/ProtectedRoute.js index 5e16e5f..17a296a 100644 --- a/Front-End/src/components/ProtectedRoute.js +++ b/Front-End/src/components/ProtectedRoute.js @@ -18,7 +18,7 @@ const ProtectedRoute = ({ children, requiredRight }) => { hasRequiredRight, }); - if (user && profileRole) { + if (user && profileRole !== null) { let requiredRightChecked = false; if (requiredRight && Array.isArray(requiredRight)) { // Vérifier si l'utilisateur a le droit requis @@ -41,7 +41,7 @@ const ProtectedRoute = ({ children, requiredRight }) => { // User non authentifié router.push(`${FE_USERS_LOGIN_URL}`); } - }, [user]); + }, [user, profileRole]); // Autoriser l'affichage si authentifié et rôle correct return hasRequiredRight ? children : null;