docs(wiki): catch concept pages up to the booth-UX/shift/font-scale work

Bring three queryable pages current with the booth-UX commit (cce99aa) whose
breadth hadn't propagated:
- booth-console: Active Sessions as a real table, dropped status column/filter,
  inline live-feed rows, removed TARGE via-badge + redundant Direction filter,
  plate now searchable + backfilled via plate-recognized WS push, per-user font scale.
- shift: Z-report display simplified (shitje dropped, opening cash added) while
  the signed payload is untouched.
- i18n: users.font_scale recorded alongside language/theme as the matching
  per-user server-stored pref (migration 0014).

Claude-Session: https://claude.ai/code/session_01Xcm6ikLgGoCxxHrxtjkk5V
This commit is contained in:
2026-06-29 11:43:12 +02:00
parent f6e35bbebf
commit 11567a417f
3 changed files with 31 additions and 0 deletions
+18
View File
@@ -111,6 +111,24 @@ what happened." Now every event is **self-describing and clickable**:
[[entry-exit-points]] for the coverage list and the synthetic `REFUSED-…` key used when a refused
entry has no ticket id.
### Layout & readability pass (2026-06-28)
- **Active Sessions is a real table** (columns: Ticket/subscriber · Plate · Entry · Elapsed), so
values align and long ones (subscriber names, ticket ids) no longer truncate. A subscriber shows
**★ + holder name**; an overstay keeps a red row tint; the audited "Open barrier" action sits in a
trailing cell. The **status column was dropped** (an unpaid transient is normal; a subscriber is
self-evident), and with it the **status filter** — only the Transient/Subscriber filter remains.
- **Live feed rows flow inline** — identity, plate, badges and reason sit on one line and wrap only
when the row runs out of width (no forced second line). The redundant `TARGË` *via*-badge was
dropped (the plate chip already conveys it), and the **Direction filter** (Hyrje/Dalje) was removed
— it duplicated the entry/exit options already in the Type filter.
- **Plate is searchable** in both the feed and active-sessions boxes (they now match the enriched
`plate` field, not the unsigned payload). A plate recognized AFTER its event shipped backfills the
feed row in place (a `plate-recognized` WS push), so it no longer needs a page refresh.
- **Per-user font scale.** An A−/A+ control in the header scales the whole UI; persisted on
`users.font_scale` and restored on login like the theme/language prefs (see [[i18n]]). Implemented
as a root `font-size` over rem-based type (NOT CSS `zoom`, which scaled viewport-locked modals out
of view) — so only text scales; `vh`/`h-screen` layout stays put.
## The shift control (header) + the booth gate
The header carries a single **shift button** that expresses the [[shift|site-wide single-open