fix(series): clearer step layout, sorted class list and autosave

The series page is split into numbered steps; classes are a sorted list
with the tick on the left and All/None, new series start with none, and
every change is saved straight away so ticks are no longer lost. Also
gives primary/danger buttons white text in the light theme.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
larssand
2026-10-11 18:28:05 +02:00
parent ec200aef2b
commit 581ec2c781
12 changed files with 172 additions and 46 deletions

View File

@@ -814,6 +814,21 @@ The user pointed out that drivers from other clubs must be able to score in a no
Verified: 262 unit tests pass (open series with a club filled in, members-only, defaults, legacy). The browser test sets members-only and checks that the guest is excluded, then switches to every driver and checks that the guest scores and wins round 1 and that the club field hides, then switches back. 68 browser scenarios pass.
### Follow-up: series page clarity (2026-10-11)
The user found the class ticks unsorted and hard to match to their labels, and selections that seemed not to save (all classes came back).
Causes:
- The classes were inline toggles wrapping in creation order.
- The form only saved on Save, so ticking a round or creating rounds re-rendered the page and dropped unsaved changes.
- New series started with every class ticked.
- [x] Numbered steps. Steps 1-2 are one autosaving form (change → save, no Save button). Classes are a sorted grid of rows with the tick on the left, highlighted when selected, with All / None. New series start with none. Rounds are listed as aligned date · race · class rows.
- [x] Found in the screenshot: `.btn-primary` and `.btn-danger` inherited the light theme's dark text. They now have `color: #fff`.
- [x] New README screenshot `docs/screenshots/series.jpg` (`node scripts/capture-screenshots.mjs series`; `SHOT_SCROLL=<selector>` captures another part of the page for checking).
Verified: three captures checked visually (steps 1-2, step 3 before and after the button fix). The browser test checks that a new series starts unticked, that classes are sorted, and that a tick is saved without submit and highlighted. 262 unit and 69 browser scenarios pass.
Not done yet: the rule that a disqualification from a whole round gives a 0 that may not be dropped (ÖRC draft p. 6). Also no public web page for the standings, only print/PDF.
## Training stats: practice by default, race laps separate