asteroid/template
Glenn Thompson 9f5e70ca05 Fix geo stats peak tracking and migrate inline JS to ParenScript
- Fix listener_count accumulation bug: use GREATEST() instead of + to track
  peak concurrent listeners per day rather than cumulative count
- Migrate all inline JavaScript from templates to ParenScript:
  - admin.ctml: listener stats, geo stats, password reset -> admin.lisp
  - audio-player-frame.ctml: stream player logic -> stream-player.lisp (new)
  - popout-player.ctml: popout player logic -> stream-player.lisp (shared)
  - frameset-wrapper.ctml: frame-busting -> frameset-utils.lisp (new)
  - profile.ctml: removed redundant inline init (already in profile.lisp)
- Fix API route detection: handle URIs with or without leading slash
- Add routes to serve new ParenScript-generated JS files
- Update ASDF system definition with new ParenScript components

Tested locally for 8+ hours with no issues.
2025-12-14 17:59:35 +03:00
..
partial feat: Add recently-played.ctml partial template 2025-11-20 17:05:35 -05:00
about-content.ctml Fix wedged player with reconnect button and volume preservation 2025-12-10 11:11:32 -05:00
about.ctml Fix wedged player with reconnect button and volume preservation 2025-12-10 11:11:32 -05:00
admin.ctml Fix geo stats peak tracking and migrate inline JS to ParenScript 2025-12-14 17:59:35 +03:00
audio-player-frame.ctml Fix geo stats peak tracking and migrate inline JS to ParenScript 2025-12-14 17:59:35 +03:00
frameset-wrapper.ctml Fix geo stats peak tracking and migrate inline JS to ParenScript 2025-12-14 17:59:35 +03:00
front-page-content.ctml Add status page for frameset mode and fix navigation 2025-12-10 11:11:32 -05:00
front-page.ctml Fix wedged player with reconnect button and volume preservation 2025-12-10 11:11:32 -05:00
login.ctml feat: Convert JavaScript to Parenscript with stream fixes and UX improvements 2025-12-06 11:55:24 -05:00
player-content.ctml Fix wedged player with reconnect button and volume preservation 2025-12-10 11:11:32 -05:00
player.ctml Fix wedged player with reconnect button and volume preservation 2025-12-10 11:11:32 -05:00
popout-player.ctml Fix geo stats peak tracking and migrate inline JS to ParenScript 2025-12-14 17:59:35 +03:00
profile.ctml Fix geo stats peak tracking and migrate inline JS to ParenScript 2025-12-14 17:59:35 +03:00
register.ctml feat: Convert JavaScript to Parenscript with stream fixes and UX improvements 2025-12-06 11:55:24 -05:00
status-content.ctml Add status page for frameset mode and fix navigation 2025-12-10 11:11:32 -05:00
status.ctml Add status page for frameset mode and fix navigation 2025-12-10 11:11:32 -05:00
users.ctml fix: remove target from nav bar 2025-11-06 16:42:29 -05:00