1 time login only

This commit is contained in:
tuanvu
2025-12-09 15:41:47 +01:00
parent 5550f0b9dd
commit 162fcdee4c
2 changed files with 8 additions and 12 deletions

View File

@@ -26,19 +26,11 @@ export default function RootLayout() {
const [user, setUser] = useState<User | null>(null); const [user, setUser] = useState<User | null>(null);
const [userRole, setUserRole] = useState<string | null>(null); const [userRole, setUserRole] = useState<string | null>(null);
useEffect(() => {
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
UIManager.setLayoutAnimationEnabledExperimental(true);
}
}, []);
useEffect(() => { useEffect(() => {
const unsubscribe = onAuthStateChanged(auth, async (currentUser) => { const unsubscribe = onAuthStateChanged(auth, async (currentUser) => {
setUser(currentUser);
if (!currentUser) { if (!currentUser) {
router.replace("/login/login"); router.replace("/login/login");
setUser(null);
return; return;
} }
@@ -47,6 +39,7 @@ export default function RootLayout() {
if (!userDoc.exists()) { if (!userDoc.exists()) {
router.replace("/login/login"); router.replace("/login/login");
setUser(null);
return; return;
} }
@@ -56,8 +49,10 @@ export default function RootLayout() {
if (role === "chef") { if (role === "chef") {
router.replace("/(tabs)"); router.replace("/(tabs)");
} else if (role === "responsable") { } else if (role === "resp") {
router.replace("/login/login"); router.replace("/(tabs)");
} else if (role === "ouvrier") {
router.replace("/(tabs)");
} else { } else {
router.replace("/login/login"); router.replace("/login/login");
} }

View File

@@ -38,11 +38,12 @@ export async function getRessources(): Promise<Ressources[]> {
} }
export async function getChantiers(): Promise<Chantier[]> { export async function getChantiers(): Promise<Chantier[]> {
const snap = await getDocs(collection(db, "chantiers")); const snap = await getDocs(collection(db, "chantier"));
const chantiers: Chantier[] = []; const chantiers: Chantier[] = [];
for (const docSnap of snap.docs) { for (const docSnap of snap.docs) {
const data = docSnap.data(); const data = docSnap.data();
//Faut convertir les Timestamp en Date ( merci à firebase :) )
const dateDep = data.dateDep instanceof Timestamp ? data.dateDep.toDate() : new Date(data.dateDep); const dateDep = data.dateDep instanceof Timestamp ? data.dateDep.toDate() : new Date(data.dateDep);
let chef: User | null = null; let chef: User | null = null;
if (data.chef) { if (data.chef) {