Commit Graph

19 Commits

Author SHA1 Message Date
Jason Stedwell 202d51753e Add live auto-refresh, search/sort, health, reporting totals, and badge-times modal
Build and Push Docker Image / build (push) Successful in 6s
Dashboard usability pass:
- Auto-refresh: poll today every 45s with a live "updated Xs ago" indicator
  and toggle; auto-pauses on past dates.
- Table search, click-to-sort column headers, and clickable summary pills
  that filter by on-time / late.
- View state (date, cutoff, controller, filters) persists to localStorage and
  the URL for reloads, bookmarking, and sharing; adds a Today button.
- First-run onboarding CTA when no controllers exist, plus a header health
  pill and per-controller last-event time driven by a new last_event_at column
  (stamped on webhook ingest; auto-migrated on boot).
- Report pivot gains per-person on-time/late/absent totals and an All row;
  CSV export now downloads via fetch/blob so failures surface as errors.
- New badge-in times modal (GET /api/badge-events) listing every badge-in for
  a person on a day — across all identities for merged people.

Docs updated to cover all of the above.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 23:14:03 -05:00
Jason Stedwell cdca5557d1 added reporting feature
Build and Push Docker Image / build (push) Successful in 22s
2026-06-19 09:10:34 -05:00
jason 98793fbecf merging users
Build and Push Docker Image / build (push) Successful in 9s
2026-05-28 15:56:36 -05:00
jason a963bd6e31 filtering tenants
Build and Push Docker Image / build (push) Successful in 22s
2026-05-28 15:01:22 -05:00
jason 0d077b558e hourly refresh
Build and Push Docker Image / build (push) Successful in 43s
2026-05-28 00:54:54 -05:00
jason 72847daaf7 multi-controller update
Build and Push Docker Image / build (push) Successful in 4m39s
2026-05-28 00:39:46 -05:00
jasonMPM 47138abff4 Add files via upload 2026-03-04 23:04:55 -06:00
jasonMPM 85ca8b1b6d Add files via upload 2026-03-04 22:58:00 -06:00
jasonMPM b6d7ae88ab Update app.py 2026-03-04 22:26:21 -06:00
jasonMPM 36a2b1a6e7 Update app.py 2026-03-04 22:22:04 -06:00
jasonMPM 0f3083d060 Update app.py 2026-03-04 22:16:36 -06:00
jasonMPM dd0bd79c36 Update app.py 2026-03-04 22:13:39 -06:00
jasonMPM 2cb050334a Update app.py 2026-03-04 22:03:30 -06:00
jasonMPM 4d1b8e705c Add files via upload 2026-03-04 21:55:13 -06:00
jasonMPM 0b2a85d91c Add files via upload 2026-03-04 21:43:49 -06:00
jasonMPM f74b5fd7c5 Add files via upload 2026-03-04 20:56:30 -06:00
jasonMPM 4115b90a48 Add files via upload 2026-03-04 19:53:39 -06:00
jasonMPM 9c5206ae59 Add files via upload 2026-03-04 19:42:38 -06:00
jasonMPM e01c075427 Add files via upload 2026-03-04 17:45:28 -06:00