diff --git a/wwwroot/app.js b/wwwroot/app.js index 08a4f8c..f979e44 100644 --- a/wwwroot/app.js +++ b/wwwroot/app.js @@ -91,7 +91,10 @@ function renderPhasePill() { }; const id = viewMap[state.phase]; 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() { @@ -214,12 +217,19 @@ function setupHandlers() { }); toast("Phase updated"); state.phase = phase; + $("phase-select").dataset.userEditing = ""; await refreshPhaseData(); } catch (err) { 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")); $("factory-reset").addEventListener("click", () => adminAction("/api/admin/factory-reset", "Factory reset complete")); }