forked from Decentrala/website
[Lang] fix persistance
This commit is contained in:
@@ -46,6 +46,27 @@ window.addEventListener("DOMContentLoaded", () => {
|
||||
|
||||
window.addEventListener("resize", () => isMenuOpen() && closeMenu());
|
||||
main.addEventListener("click", () => isMenuOpen() && closeMenu());
|
||||
|
||||
/* Language persistence */
|
||||
const currentLang = document.documentElement.lang || "sr";
|
||||
const anchors = document.getElementsByTagName("a");
|
||||
Array.from(anchors).forEach((a) => {
|
||||
// Skip language switcher links
|
||||
if (a.classList.contains("lang")) return;
|
||||
const href = a.getAttribute("href");
|
||||
if (!href) return;
|
||||
if (href.startsWith("/")) {
|
||||
// Replace existing language prefix or add one
|
||||
if (href.startsWith("/sr") || href.startsWith("/en")) {
|
||||
if (!href.startsWith(`/${currentLang}`)) {
|
||||
a.setAttribute("href", `/${currentLang}${href.slice(3)}`);
|
||||
}
|
||||
} else {
|
||||
// No language prefix, prepend currentLang
|
||||
a.setAttribute("href", `/${currentLang}${href}`);
|
||||
}
|
||||
}
|
||||
});
|
||||
hamburger?.addEventListener("click", () => isMenuOpen() ? closeMenu() : openMenu());
|
||||
|
||||
themeBtn.addEventListener("click", () => {
|
||||
|
||||
Reference in New Issue
Block a user