Start the change to the new stuff
This commit is contained in:
parent
927b68dab7
commit
5bd87033e2
2 changed files with 42 additions and 36 deletions
|
|
@ -7,41 +7,47 @@ import Layout from "@layouts/Layout.astro";
|
||||||
<Loading />
|
<Loading />
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import { pageLoad } from "@utils/events";
|
import { EventHandler } from "@utils/events";
|
||||||
pageLoad(() => {
|
import { defaultStore } from "@utils/storage";
|
||||||
|
import { navigate } from "astro:transitions/client";
|
||||||
|
const eHandler = new EventHandler({
|
||||||
|
events: {
|
||||||
|
"astro:page-load": () => {
|
||||||
let currentLang = localStorage.getItem("selectedLanguage");
|
let currentLang = localStorage.getItem("selectedLanguage");
|
||||||
const redirect = (loc: any) => (window.location.href = loc);
|
|
||||||
if (currentLang) {
|
if (currentLang) {
|
||||||
try {
|
try {
|
||||||
let parsed = JSON.parse(currentLang).value;
|
let parsed = JSON.parse(currentLang).value;
|
||||||
switch (parsed) {
|
switch (parsed) {
|
||||||
case "en_US":
|
case "en_US":
|
||||||
redirect("/en_US/");
|
navigate("/en_US/");
|
||||||
break;
|
break;
|
||||||
case "jp":
|
case "jp":
|
||||||
redirect("/jp/");
|
navigate("/jp/");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
redirect("/en_US/");
|
navigate("/en_US/");
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
} catch {
|
}
|
||||||
|
catch {
|
||||||
localStorage.clear();
|
localStorage.clear();
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
|
else {
|
||||||
if (navigator.language.includes("ja")) {
|
if (navigator.language.includes("ja")) {
|
||||||
localStorage.setItem("selectedLanguage", JSON.stringify({ value: "jp" }));
|
defaultStore.setVal("selectedLanguage", JSON.stringify({ value: "jp" }));
|
||||||
redirect("/jp/");
|
navigate("/jp/");
|
||||||
} else {
|
}
|
||||||
localStorage.setItem(
|
else {
|
||||||
"selectedLanguage",
|
defaultStore.setVal("selectedLanguage", JSON.stringify({ value: "en_US" }));
|
||||||
JSON.stringify({ value: "en_US" })
|
navigate("/en_US/");
|
||||||
);
|
|
||||||
redirect("/en_US/");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
logging: false
|
||||||
});
|
});
|
||||||
|
eHandler.handleEvents();
|
||||||
</script>
|
</script>
|
||||||
<noscript>
|
<noscript>
|
||||||
JavaScript is required to run this app.
|
JavaScript is required to run this app.
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,9 @@ import LoadingComponent from "@components/Loading.astro";
|
||||||
import Layout from "@layouts/Layout.astro";
|
import Layout from "@layouts/Layout.astro";
|
||||||
---
|
---
|
||||||
|
|
||||||
<!-- Layout title="Loading page..." noHeader="true">
|
<Layout title="Loading page..." noHeader="true">
|
||||||
<LoadingComponent />
|
<LoadingComponent />
|
||||||
</Layout -->
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import { EventHandler } from "@utils/events";
|
import { EventHandler } from "@utils/events";
|
||||||
import { navigate } from "astro:transitions/client";
|
import { navigate } from "astro:transitions/client";
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue