From ee3f5012f72599f05cf8b2516f5a52e4396d5b6f Mon Sep 17 00:00:00 2001 From: Alexis Leboeuf Date: Thu, 11 Dec 2025 23:41:23 +0100 Subject: [PATCH] Almost finished Roles bugfix --- app/(tabs)/home.tsx | 11 ++++++----- app/_layout.tsx | 38 +++++++++++++++++++------------------- 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/app/(tabs)/home.tsx b/app/(tabs)/home.tsx index dec507f..7d58e83 100644 --- a/app/(tabs)/home.tsx +++ b/app/(tabs)/home.tsx @@ -16,6 +16,7 @@ export default function Home() { const { chantier, setChantier } = useChantier(); const { role } = useUser(); + console.log("ROLE USER", role) return( @@ -24,11 +25,11 @@ export default function Home() { - - - - {role === "chef"} - + {role === "chef" && ( + + + + )} ) diff --git a/app/_layout.tsx b/app/_layout.tsx index 7bd0abb..253e727 100644 --- a/app/_layout.tsx +++ b/app/_layout.tsx @@ -16,7 +16,7 @@ import { Platform, UIManager } from 'react-native'; import { ChantierProvider } from "./ContextChantier"; import { UserProvider } from "./ContextUser"; import { RessourcesProvider } from "./ContextRessource"; - +import { useUser } from "./ContextUser"; export const unstable_settings = { anchor: "(tabs)", @@ -25,14 +25,12 @@ export const unstable_settings = { export default function RootLayout() { const colorScheme = useColorScheme(); const router = useRouter(); - const [user, setUser] = useState(null); - const [userRole, setUserRole] = useState(null); - + const { setUser, setRole } = useUser(); useEffect(() => { const unsubscribe = onAuthStateChanged(auth, async (currentUser) => { if (!currentUser) { setUser(null); - setUserRole(null); + setRole(null); router.replace("/login/login"); return; } @@ -43,13 +41,14 @@ export default function RootLayout() { if (!userDoc.exists()) { router.replace("/login/login"); setUser(null); - setUserRole(null); + setRole(null); return; } const { role } = userDoc.data(); + console.log("ROLE APP",role) setUser(currentUser); - setUserRole(role); + setRole(role); router.replace("/(tabs)/home"); }); return unsubscribe; @@ -59,18 +58,19 @@ export default function RootLayout() { - - - - - - - - - + + + + + + + + + +