Keep admin phase select stable while user is interacting

This commit is contained in:
2026-01-28 15:20:44 +01:00
parent 5cb9135179
commit 528d276ba0

View File

@@ -91,7 +91,10 @@ function renderPhasePill() {
}; };
const id = viewMap[state.phase]; const id = viewMap[state.phase];
if (id) $(id).classList.remove("hidden"); if (id) $(id).classList.remove("hidden");
$("phase-select").value = state.phase || "Suggest"; const phaseSelect = $("phase-select");
if (!phaseSelect.dataset.userEditing) {
phaseSelect.value = state.phase || "Suggest";
}
} }
function renderCounts() { function renderCounts() {
@@ -214,12 +217,19 @@ function setupHandlers() {
}); });
toast("Phase updated"); toast("Phase updated");
state.phase = phase; state.phase = phase;
$("phase-select").dataset.userEditing = "";
await refreshPhaseData(); await refreshPhaseData();
} catch (err) { } catch (err) {
toast(err.message, true); toast(err.message, true);
} }
}); });
const phaseSelect = $("phase-select");
["focus", "input", "click"].forEach(evt => {
phaseSelect.addEventListener(evt, () => { phaseSelect.dataset.userEditing = "1"; });
});
phaseSelect.addEventListener("blur", () => { phaseSelect.dataset.userEditing = ""; });
$("reset").addEventListener("click", () => adminAction("/api/admin/reset", "Reset complete")); $("reset").addEventListener("click", () => adminAction("/api/admin/reset", "Reset complete"));
$("factory-reset").addEventListener("click", () => adminAction("/api/admin/factory-reset", "Factory reset complete")); $("factory-reset").addEventListener("click", () => adminAction("/api/admin/factory-reset", "Factory reset complete"));
} }