minor fixess
This commit is contained in:
+27
-5
@@ -52,6 +52,7 @@ $("#save-layout")?.addEventListener("click", async () => {
|
||||
columns: parseInt($("#layout-columns").value, 10),
|
||||
spacing: parseInt($("#layout-spacing").value, 10),
|
||||
showLabels: $("#layout-show-labels").checked,
|
||||
labelColor: $("#layout-label-color").value,
|
||||
});
|
||||
flash("Расположение сохранено");
|
||||
} catch (e) { flash(e.message, true); }
|
||||
@@ -84,21 +85,35 @@ $("#save-bg")?.addEventListener("click", async () => {
|
||||
// ---------- Feedback (borders) ----------
|
||||
function syncFeedbackPreview() {
|
||||
const ok = $("#fb-preview-ok"), err = $("#fb-preview-error");
|
||||
const hold = $("#fb-preview-hold"), pending = $("#fb-preview-pending");
|
||||
if (!ok) return;
|
||||
const okColor = $("#fb-ok-color").value;
|
||||
const errColor = $("#fb-error-color").value;
|
||||
const holdColor = $("#fb-hold-color").value;
|
||||
const pendingColor = $("#fb-pending-color").value;
|
||||
const okW = $("#fb-ok-width").value;
|
||||
const errW = $("#fb-error-width").value;
|
||||
const pendingW = $("#fb-pending-width").value;
|
||||
const glow = $("#fb-glow").value;
|
||||
$("#fb-ok-width-val").textContent = okW;
|
||||
$("#fb-error-width-val").textContent = errW;
|
||||
$("#fb-pending-width-val").textContent = pendingW;
|
||||
$("#fb-glow-val").textContent = glow;
|
||||
ok.style.boxShadow = `0 0 ${glow}px ${Math.round(glow/2)}px ${okColor}`;
|
||||
ok.style.border = `${okW}px solid ${okColor}`;
|
||||
err.style.boxShadow = `0 0 ${glow}px ${Math.round(glow/2)}px ${errColor}`;
|
||||
err.style.border = `${errW}px solid ${errColor}`;
|
||||
if (hold) {
|
||||
hold.style.boxShadow = `0 0 ${Math.max(8, glow * 0.5)}px ${Math.round(glow/3)}px ${holdColor}`;
|
||||
hold.style.border = `3px solid ${holdColor}`;
|
||||
}
|
||||
if (pending) {
|
||||
pending.style.boxShadow = `0 0 ${glow}px ${Math.round(glow/2)}px ${pendingColor}`;
|
||||
pending.style.border = `${pendingW}px solid ${pendingColor}`;
|
||||
}
|
||||
}
|
||||
["fb-ok-color", "fb-error-color", "fb-ok-width", "fb-error-width", "fb-glow"]
|
||||
["fb-ok-color", "fb-error-color", "fb-hold-color", "fb-pending-color",
|
||||
"fb-ok-width", "fb-error-width", "fb-pending-width", "fb-glow"]
|
||||
.forEach(id => $("#" + id)?.addEventListener("input", syncFeedbackPreview));
|
||||
syncFeedbackPreview();
|
||||
|
||||
@@ -107,8 +122,11 @@ $("#save-feedback")?.addEventListener("click", async () => {
|
||||
await api("PUT", "/api/feedback", {
|
||||
okColor: $("#fb-ok-color").value,
|
||||
errorColor: $("#fb-error-color").value,
|
||||
holdColor: $("#fb-hold-color").value,
|
||||
pendingColor: $("#fb-pending-color").value,
|
||||
okWidth: parseInt($("#fb-ok-width").value, 10),
|
||||
errorWidth: parseInt($("#fb-error-width").value, 10),
|
||||
pendingWidth: parseInt($("#fb-pending-width").value, 10),
|
||||
glowRadius: parseInt($("#fb-glow").value, 10),
|
||||
});
|
||||
flash("Обводка сохранена");
|
||||
@@ -137,11 +155,15 @@ $$(".icon-tile .del").forEach(btn => {
|
||||
|
||||
// ---------- Password ----------
|
||||
$("#save-password")?.addEventListener("click", async () => {
|
||||
const pwd = $("#new-password").value;
|
||||
const pwd = $("#new-password").value.trim();
|
||||
if (!pwd) { flash("Введите пароль", true); return; }
|
||||
await api("PUT", "/api/settings", { password: pwd });
|
||||
flash("Пароль сохранён. Действует со следующего входа.");
|
||||
$("#new-password").value = "";
|
||||
try {
|
||||
await api("PUT", "/api/settings", { password: pwd });
|
||||
flash("Пароль сохранён. Действует со следующего входа.");
|
||||
$("#new-password").value = "";
|
||||
} catch (e) {
|
||||
flash(e.message || "Не удалось сохранить пароль", true);
|
||||
}
|
||||
});
|
||||
|
||||
// ---------- Buttons drag-drop ----------
|
||||
|
||||
Reference in New Issue
Block a user