From 872a7f17c31bddcdfae9b2c5cd017cd4dfdaca37 Mon Sep 17 00:00:00 2001 From: Skylar Grant Date: Mon, 19 Oct 2026 11:35:39 -0400 Subject: [PATCH] Add a per-user sort order for the technician table Settings has a "Sort rows by" choice: the technician list order (the default, as before), technician name, Total open, Closed today or any status column. Counts sort busiest first with ties by name, and the sorted column's header gets an arrow. The browser does the sorting; the server only validates and saves tableSort. Co-Authored-By: Claude Opus 5.5 --- README.md | 1 + docs/NOTES.md | 1 + docs/ROADMAP.md | 1 + src/public/index.html | 56 ++++++++++++++++++++++++++++++++++++++----- src/server.js | 1 + src/settings.js | 33 ++++++++++++++++++++----- 6 files changed, 81 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index a19eedb..c212446 100644 --- a/README.md +++ b/README.md @@ -133,6 +133,7 @@ The full security model, its limits and the open items are in [docs/SECURITY.md] - **Timing:** how often the status table recounts (2 to 60 minutes) and how long closed tickets stay in the feed (1 to 24 hours). The closed check itself always runs every minute. - **Weather location**, from the list of campuses in `src/places.js`. - **Which statuses count as closed for the feed and ding.** Starts as `STATUS_NAMES`. SDP closes a resolved ticket on its own after a few days, so ticking **Resolved** gives the alert when the ticket is resolved instead. With Resolved ticked, a ticket's time in the feed is its resolve time, so the automatic close later doesn't ding again. +- **Table order:** sort the technician table by technician name, Total open, Closed today or any status column. Counts sort busiest first. The default keeps the order of the technician list (A to Z when watching everyone), and the sorted column's header has an arrow. - **What's shown:** the stat tiles, weather card and closed feed can be hidden (the ding still plays with the feed hidden), and so can individual status columns. Settings are saved to the person's Zoho account on the server, so they follow them to any browser. Only the values that differ from `.env` are stored, so someone who never changed the region picks up later changes to `.env`. **Reset to defaults** goes back to `.env`. The closed and open status rules for the status table, Closed today and the unassigned count aren't per person; they stay in `.env`. diff --git a/docs/NOTES.md b/docs/NOTES.md index aedc21c..d245850 100644 --- a/docs/NOTES.md +++ b/docs/NOTES.md @@ -40,6 +40,7 @@ Docs: