This commit is contained in:
@@ -180,7 +180,7 @@ Per-controller actions in the modal:
|
|||||||
|
|
||||||
| Control | Description |
|
| Control | Description |
|
||||||
|---|---|
|
|---|---|
|
||||||
| **Date picker** | Choose which day to view |
|
| **Date picker** | Choose which day to view (defaults to the browser's local date) |
|
||||||
| **Badged in by** | Set your on-time cutoff (HH:MM) |
|
| **Badged in by** | Set your on-time cutoff (HH:MM) |
|
||||||
| **Controller** | Filter the table to one controller, or show All |
|
| **Controller** | Filter the table to one controller, or show All |
|
||||||
| **Show filtered** | Include filtered tenants in the table (dimmed and tagged) |
|
| **Show filtered** | Include filtered tenants in the table (dimmed and tagged) |
|
||||||
@@ -209,6 +209,17 @@ Per-controller actions in the modal:
|
|||||||
> controller the person badged into that day, plus a "MERGED" pill so it's
|
> controller the person badged into that day, plus a "MERGED" pill so it's
|
||||||
> clear the row represents N UniFi UUIDs.
|
> clear the row represents N UniFi UUIDs.
|
||||||
|
|
||||||
|
### Interface notes
|
||||||
|
|
||||||
|
- On narrow screens, the attendance table automatically changes into stacked
|
||||||
|
row cards with labels for each field, so all columns remain visible without
|
||||||
|
sideways scrolling.
|
||||||
|
- Destructive or structural actions such as removing a controller, dissolving a
|
||||||
|
merged person, splitting an identity, and resetting a day use in-app
|
||||||
|
confirmation dialogs instead of browser popups.
|
||||||
|
- Toast notifications announce success/failure states; keyboard users can close
|
||||||
|
open dialogs with `Esc`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Merging identities across controllers
|
## Merging identities across controllers
|
||||||
@@ -225,9 +236,10 @@ fixes this:
|
|||||||
with matching full names across different controllers. One click confirms
|
with matching full names across different controllers. One click confirms
|
||||||
each suggestion (no auto-apply; you're always in the loop).
|
each suggestion (no auto-apply; you're always in the loop).
|
||||||
- The same modal lists every merged person below the suggestions, with
|
- The same modal lists every merged person below the suggestions, with
|
||||||
per-person actions: **Rename**, **Split off** (remove one identity from the
|
per-person actions: **Rename** (opens an in-app text dialog), **Split off**
|
||||||
group), **Dissolve** (break the whole group up — past badge events are
|
(remove one identity from the group), **Dissolve** (break the whole group up —
|
||||||
preserved, the identities just become standalone rows again).
|
past badge events are preserved, the identities just become standalone rows
|
||||||
|
again).
|
||||||
|
|
||||||
Once merged, the attendance table:
|
Once merged, the attendance table:
|
||||||
|
|
||||||
|
|||||||
+666
-453
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user