From 070a390da8e52226f16ae1161e47d8782eef3e00 Mon Sep 17 00:00:00 2001 From: Theis Gaedigk Date: Sun, 26 Oct 2025 14:05:54 +0100 Subject: [PATCH] refactor: streamline language initialization and update Container component in HomePage and MyLoansPage --- FrontendV2/src/App.tsx | 16 ++++++++++++++++ FrontendV2/src/pages/HomePage.tsx | 12 ++++-------- FrontendV2/src/pages/MyLoansPage.tsx | 2 +- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/FrontendV2/src/App.tsx b/FrontendV2/src/App.tsx index 3efeed6..3a03469 100644 --- a/FrontendV2/src/App.tsx +++ b/FrontendV2/src/App.tsx @@ -11,6 +11,7 @@ import { UserContext, type User } from "./states/Context"; import { triggerLogoutAtom } from "@/states/Atoms"; import { MyLoansPage } from "./pages/MyLoansPage"; import Landingpage from "./pages/Landingpage"; +import { changeLanguage } from "i18next"; const API_BASE = (import.meta as any).env?.VITE_BACKEND_URL || @@ -44,6 +45,21 @@ function App() { }; 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 ( diff --git a/FrontendV2/src/pages/HomePage.tsx b/FrontendV2/src/pages/HomePage.tsx index bbf5153..013fc2f 100644 --- a/FrontendV2/src/pages/HomePage.tsx +++ b/FrontendV2/src/pages/HomePage.tsx @@ -46,7 +46,7 @@ export const HomePage = () => { }; return ( - +
{isMsg && ( { if (response && response.status === "error") { setMsgStatus("error"); setMsgTitle(response.title || t("error")); - setMsgDescription( - response.description || t("unknown-error") - ); + setMsgDescription(response.description || t("unknown-error")); setIsMsg(true); return; } @@ -147,15 +145,13 @@ export const HomePage = () => { if (response.status === "error") { setMsgStatus("error"); setMsgTitle(response.title || t("error")); - setMsgDescription( - response.description || t("unknown-error") - ); + setMsgDescription(response.description || t("unknown-error")); setIsMsg(true); return; } setMsgStatus("success"); setMsgTitle(t("success")); - setMsgDescription(t("loan-success")) ; + setMsgDescription(t("loan-success")); setIsMsg(true); }) } diff --git a/FrontendV2/src/pages/MyLoansPage.tsx b/FrontendV2/src/pages/MyLoansPage.tsx index 3aff205..0d937b5 100644 --- a/FrontendV2/src/pages/MyLoansPage.tsx +++ b/FrontendV2/src/pages/MyLoansPage.tsx @@ -117,7 +117,7 @@ export const MyLoansPage = () => { return ( <> - +
{isMsg && (