Revelav3/src/pages/index.astro
2025-01-06 05:58:22 -07:00

55 lines
1.8 KiB
Text

---
import Loading from "@components/Loading.astro";
import Layout from "@layouts/Layout.astro";
---
<Layout title="" noHeader="true">
<Loading />
</Layout>
<script>
import { EventHandler } from "@utils/events";
import { defaultStore } from "@utils/storage";
import { SettingsVals } from "@utils/values";
import { navigate } from "astro:transitions/client";
const eHandler = new EventHandler({
events: {
"astro:page-load": () => {
let currentLang = defaultStore.getVal(SettingsVals.i18n.lang);
if (currentLang) {
try {
switch (currentLang) {
case "en_US":
navigate("/en_US/");
break;
case "jp":
navigate("/jp/");
break;
default:
navigate("/en_US/");
}
}
catch {
localStorage.clear();
window.location.reload();
}
}
else {
if (navigator.language.includes("ja")) {
defaultStore.setVal("selectedLanguage", SettingsVals.i18n.languages.jp);
navigate("/jp/");
}
else {
defaultStore.setVal("selectedLanguage", SettingsVals.i18n.languages.en);
navigate("/en_US/");
}
}
}
},
logging: false
});
//Bind the events.
eHandler.bind();
</script>
<noscript>
JavaScript is required to run this app.
</noscript>