[web] Move web client to this repo
This commit is contained in:
parent
4b8d0ee4a4
commit
f8fd5b3c3e
7 changed files with 773 additions and 0 deletions
35
forest-web/settings.js
Normal file
35
forest-web/settings.js
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
"use strict";
|
||||
|
||||
const settingsDiv = document.getElementById("settings");
|
||||
const settingsButton = settingsDiv.querySelector("button");
|
||||
const settingsForm = settingsDiv.querySelector("form");
|
||||
let settingsMenuState;
|
||||
settingsButton.addEventListener("click", event => setSettingsMenuState(!settingsMenuState));
|
||||
window.addEventListener("load", event => setSettingsMenuState(false));
|
||||
|
||||
function setSettingsMenuState(open) {
|
||||
settingsMenuState = open;
|
||||
if (open) {
|
||||
settingsDiv.style.transform = "none";
|
||||
} else {
|
||||
let height = settingsButton.offsetHeight;
|
||||
settingsDiv.style.transform = `translateY(calc(100% - ${height}px))`;
|
||||
}
|
||||
}
|
||||
|
||||
const curvyLinesCheckbox = document.getElementById("curvy-lines-checkbox");
|
||||
curvyLinesCheckbox.addEventListener("change", event => setCurvyLines(event.target.checked));
|
||||
window.addEventListener("load", event => {
|
||||
let curvy = window.localStorage.getItem("curvy");
|
||||
curvyLinesCheckbox.checked = curvy;
|
||||
setCurvyLines(curvy);
|
||||
});
|
||||
|
||||
function setCurvyLines(curvy) {
|
||||
document.body.classList.toggle("curvy", curvy);
|
||||
if (curvy) {
|
||||
window.localStorage.setItem("curvy", "yes");
|
||||
} else {
|
||||
window.localStorage.removeItem("curvy");
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue