2025-04-17 11:02:37 +02:00
|
|
|
const buttons = ["item", "link", "swap"];
|
2025-03-28 21:41:36 +01:00
|
|
|
|
2025-04-17 09:55:28 +02:00
|
|
|
for (let button of buttons) {
|
|
|
|
document.getElementById(button).addEventListener("click", () => {
|
|
|
|
document.body.classList.toggle(button);
|
|
|
|
});
|
|
|
|
}
|
2025-04-16 22:04:28 +02:00
|
|
|
|
2025-04-17 11:19:35 +02:00
|
|
|
let theme
|
2025-02-16 20:03:30 +01:00
|
|
|
|
2025-02-17 01:51:01 +01:00
|
|
|
function theme_get() {
|
2025-04-17 11:19:35 +02:00
|
|
|
theme = localStorage.getItem("theme");
|
|
|
|
if (! theme) {
|
|
|
|
if (window.matchMedia("(prefers-color-scheme: dark)").matches) {
|
|
|
|
theme = "dark";
|
|
|
|
} else {
|
|
|
|
theme = "light";
|
|
|
|
}
|
2025-02-17 01:51:01 +01:00
|
|
|
}
|
2025-04-17 11:19:35 +02:00
|
|
|
theme_set()
|
2025-02-17 01:51:01 +01:00
|
|
|
}
|
2025-04-17 11:19:35 +02:00
|
|
|
|
|
|
|
function theme_set() {
|
2025-02-18 00:01:39 +01:00
|
|
|
document.documentElement.setAttribute("data-theme", theme);
|
|
|
|
localStorage.setItem("theme", theme);
|
2025-02-17 01:51:01 +01:00
|
|
|
}
|
2025-02-16 20:03:30 +01:00
|
|
|
|
2025-04-17 11:19:35 +02:00
|
|
|
function theme_swap() {
|
|
|
|
theme = theme === "light" ? "dark" : "light";
|
|
|
|
theme_set();
|
|
|
|
}
|
|
|
|
|
|
|
|
document.getElementById("theme").addEventListener("click", () => {
|
|
|
|
theme_swap();
|
2025-02-16 20:03:30 +01:00
|
|
|
});
|
|
|
|
|
2025-04-17 11:19:35 +02:00
|
|
|
theme_get()
|