refactor: streamline language initialization and update Container component in HomePage and MyLoansPage
This commit is contained in:
@@ -11,6 +11,7 @@ import { UserContext, type User } from "./states/Context";
|
|||||||
import { triggerLogoutAtom } from "@/states/Atoms";
|
import { triggerLogoutAtom } from "@/states/Atoms";
|
||||||
import { MyLoansPage } from "./pages/MyLoansPage";
|
import { MyLoansPage } from "./pages/MyLoansPage";
|
||||||
import Landingpage from "./pages/Landingpage";
|
import Landingpage from "./pages/Landingpage";
|
||||||
|
import { changeLanguage } from "i18next";
|
||||||
|
|
||||||
const API_BASE =
|
const API_BASE =
|
||||||
(import.meta as any).env?.VITE_BACKEND_URL ||
|
(import.meta as any).env?.VITE_BACKEND_URL ||
|
||||||
@@ -44,6 +45,21 @@ function App() {
|
|||||||
};
|
};
|
||||||
verifyToken();
|
verifyToken();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// set initial language
|
||||||
|
if (!Cookies.get("language")) {
|
||||||
|
const getBrowserLanguage = () => {
|
||||||
|
const lang = navigator.languages?.[0] || navigator.language || "en";
|
||||||
|
return lang.split("-")[0].toLowerCase();
|
||||||
|
};
|
||||||
|
|
||||||
|
changeLanguage(getBrowserLanguage());
|
||||||
|
Cookies.set("language", getBrowserLanguage());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Cookies.get("language")) {
|
||||||
|
changeLanguage(Cookies.get("language") || "en");
|
||||||
|
}
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ export const HomePage = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Container maxW="7xl" className="px-6 sm:px-8 pt-10">
|
<Container className="px-6 sm:px-8 pt-10">
|
||||||
<Header />
|
<Header />
|
||||||
{isMsg && (
|
{isMsg && (
|
||||||
<MyAlert
|
<MyAlert
|
||||||
@@ -92,9 +92,7 @@ export const HomePage = () => {
|
|||||||
if (response && response.status === "error") {
|
if (response && response.status === "error") {
|
||||||
setMsgStatus("error");
|
setMsgStatus("error");
|
||||||
setMsgTitle(response.title || t("error"));
|
setMsgTitle(response.title || t("error"));
|
||||||
setMsgDescription(
|
setMsgDescription(response.description || t("unknown-error"));
|
||||||
response.description || t("unknown-error")
|
|
||||||
);
|
|
||||||
setIsMsg(true);
|
setIsMsg(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -147,15 +145,13 @@ export const HomePage = () => {
|
|||||||
if (response.status === "error") {
|
if (response.status === "error") {
|
||||||
setMsgStatus("error");
|
setMsgStatus("error");
|
||||||
setMsgTitle(response.title || t("error"));
|
setMsgTitle(response.title || t("error"));
|
||||||
setMsgDescription(
|
setMsgDescription(response.description || t("unknown-error"));
|
||||||
response.description || t("unknown-error")
|
|
||||||
);
|
|
||||||
setIsMsg(true);
|
setIsMsg(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setMsgStatus("success");
|
setMsgStatus("success");
|
||||||
setMsgTitle(t("success"));
|
setMsgTitle(t("success"));
|
||||||
setMsgDescription(t("loan-success")) ;
|
setMsgDescription(t("loan-success"));
|
||||||
setIsMsg(true);
|
setIsMsg(true);
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ export const MyLoansPage = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Container maxW="7xl" className="px-6 sm:px-8 pt-10">
|
<Container className="px-6 sm:px-8 pt-10">
|
||||||
<Header />
|
<Header />
|
||||||
{isMsg && (
|
{isMsg && (
|
||||||
<MyAlert
|
<MyAlert
|
||||||
|
|||||||
Reference in New Issue
Block a user