Keep admin phase select stable while user is interacting
This commit is contained in:
@@ -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"));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user