mirror of
https://github.com/Screenly/Anthias.git
synced 2026-06-11 01:28:23 -04:00
* fix(views): accept 12-hour AM/PM times in the asset edit form (#2988) - assets_update split play_time_from/to on ':' and int()'d the pieces, so the "02:30 PM" values Flatpickr posts under the default 12-hour clock raised ValueError -> HTTP 500 - add _parse_local_time mirroring _parse_local_datetime: try H:M and I:M p, fall back to ISO - unparseable date/time input now returns an error toast instead of a 500 (allowInput lets operators type anything) - reproduce via Playwright tests that drive the real time picker in both clock modes, plus parametrized form-POST regression tests - expand UI integration coverage: rename, success toast, advanced switches, refresh interval, video duration lock, modal cancels, preview content, delete cancel, schedule chips, navbar, settings round-trips (24h clock, date format, player name) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(views): reject partial play-time windows instead of clearing both - only one endpoint set now returns an error toast and saves nothing, matching the v2 API's _validate_time_window - previously a half-filled form silently wiped an existing window - both fields empty still deliberately resets to "play all day" Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * test(app): drop fixed sleeps from cancel/duration integration tests - _submit_edit_form already awaits the POST, so the DB assertion needs no delay - the cancel paths fire no request once Alpine state clears Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * docs(tests): clarify that flatpickr leading-zero normalization is expected Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>