diff --git a/src/layouts/AppLayout.jsx b/src/layouts/AppLayout.jsx index 2f7988e..4845f6d 100644 --- a/src/layouts/AppLayout.jsx +++ b/src/layouts/AppLayout.jsx @@ -1,4 +1,5 @@ import theme from "@/core/utils/theme"; +import useLanguage from "@/lib/app/hooks/useLanguage"; import useLoading from "@/lib/app/hooks/useLoading"; import useUser from "@/lib/app/hooks/useUser"; import Head from "next/head"; @@ -6,20 +7,33 @@ import NextNProgress from "nextjs-progressbar"; import { useEffect } from "react"; function AppLayout({ children, isBot }) { - const { setLoadingPage } = useLoading(); - const { token, isAuth } = useUser(); - useEffect(() => { - if (token) { - if (isAuth) { - setLoadingPage(false); - return; - } - setLoadingPage(true); - return; - } - setLoadingPage(false); - return; - }, [token, isAuth]); + const { languageIsReady } = useLanguage(); + const { setLoadingPage } = useLoading(); + const { userChangedLanguage, token, isAuth } = useUser(); + useEffect(() => { + if (languageIsReady) { + if (token) { + if (isAuth) { + if (userChangedLanguage) { + setLoadingPage(true); + return; + } + setLoadingPage(false); + return; + } + setLoadingPage(true); + return; + } + setLoadingPage(false); + return; + } + setLoadingPage(true); + }, [languageIsReady, token, isAuth, userChangedLanguage]); + + if (!isBot) { + if (userChangedLanguage) return; + if (!languageIsReady) return; + } return ( <>