Files
ProxmoxAAS-Dashboard/web/scripts/settings.js
2025-03-13 21:59:36 +00:00

36 lines
1.0 KiB
JavaScript

import { setAppearance, getSyncSettings, getSearchSettings, getThemeSettings, setSyncSettings, setSearchSettings, setThemeSettings } from "./utils.js";
window.addEventListener("DOMContentLoaded", init);
function init () {
setAppearance();
const { scheme, rate } = getSyncSettings();
if (scheme) {
document.querySelector(`#sync-${scheme}`).checked = true;
}
if (rate) {
document.querySelector("#sync-rate").value = rate;
}
const search = getSearchSettings();
if (search) {
document.querySelector(`#search-${search}`).checked = true;
}
const theme = getThemeSettings();
if (theme) {
document.querySelector("#appearance-theme").value = theme;
}
document.querySelector("#settings").addEventListener("submit", handleSaveSettings, false);
}
function handleSaveSettings (event) {
event.preventDefault();
const form = new FormData(document.querySelector("#settings"));
setSyncSettings(form.get("sync-scheme"), form.get("sync-rate"));
setSearchSettings(form.get("search-criteria"));
setThemeSettings(form.get("appearance-theme"));
init();
}