fix: complete admin UX review findings

This commit is contained in:
2026-08-28 16:01:00 +03:00
parent 5d3fb68c2f
commit 78493b9248
10 changed files with 55 additions and 16 deletions

View File

@@ -11,6 +11,11 @@
"profile",
];
const storageKey = "miem.directory.columns";
const columnPresets = {
review: ["full_name", "status", "academic_degree", "last_seen_at", "profile"],
contacts: ["full_name", "status", "email", "phone", "address", "profile"],
full: ["full_name", "status", "positions", "hse_start_year", "email", "phone", "address", "academic_degree", "publications_count", "courses_count", "news_count", "first_seen_at", "last_seen_at", "dismissed_at", "profile"],
};
function readColumns() {
try {
@@ -53,6 +58,13 @@
modal.close();
});
});
document.querySelectorAll("[data-columns-preset]").forEach((button) => {
button.addEventListener("click", () => {
columns = columnPresets[button.dataset.columnsPreset];
writeColumns(columns);
applyColumns(columns);
});
});
modal.addEventListener("click", (event) => {
if (event.target === modal) modal.close();
});
@@ -109,10 +121,12 @@
} catch (_error) {
const error = document.querySelector("[data-progress-error]");
if (error) error.hidden = false;
return false;
return true;
}
};
document.querySelectorAll("[data-progress-retry]").forEach((button) => button.addEventListener("click", poll));
const interval = window.setInterval(async () => {
const keepGoing = await poll();
if (!keepGoing) window.clearInterval(interval);