Commit Graph
11 Commits
Author SHA1 Message Date
CodingPhoenix e077703d5d Fix rules CSV parsing and add rule text editing API
Strip a leading UTF-8 BOM before parsing rule CSVs (it was causing the
header row to be misread as a rule) and skip rows that clearly failed
CSV parsing (e.g. a whole line landing in the rule_number field after
a spreadsheet app double-encoded a quoted cell) instead of silently
loading garbage.

Add PUT /api/rules/{lang}/{number} and GET /api/rules/numbers so rule
text, suggested penalty and escalation mode can be edited per language
from the admin UI, always writing the CSV back out with correct
quoting via encoding/csv. Also fixes two bugs found while wiring this
up: rulesDir() ignored the configured rules_dir (falling back to a
RULES_DIR env var that's never set), and the CORS middleware didn't
allow PUT.
2026-09-05 13:32:46 +02:00
Jan Meinl 24a4eee4a6 Simplify loginStatus using max() builtin 2026-08-19 16:13:28 +02:00
Jan Meinl 65bb2b351f Add CSV file upload and auto-delimiter detection for pilot import
Allows uploading a CSV file directly instead of only pasting text, and
auto-detects comma vs semicolon separators to support more locales.
2026-08-19 15:32:26 +02:00
CodingPhoenix 4b5f0eb326 Added index.js 2026-05-18 06:38:10 +00:00
CodingPhoenix 26c821866b Removed inline JS 2026-05-18 06:37:52 +00:00
Jan Meinl 777f11d93c Add multilingual support, competition close/reopen, and backup directory 2026-05-17 09:18:34 +02:00
Jan Meinl bb9f3cd3eb Update German translations for 'balloon_id' to 'Kennung' in i18n files 2026-05-17 07:29:28 +02:00
Jan Meinl 13d9e3d66c Reduce maximum login attempts to improve security 2026-05-17 06:37:29 +02:00
Jan Meinl 570272a777 Add rules language support and improve password validation across the app 2026-05-17 05:57:20 +02:00
Jan Meinl 68034dea7d Replaced one-pager with multiple pages and fixed security bugs 2026-05-16 21:10:55 +02:00
Jan Meinl 802906f9d4 Add basic web app and API integration 2026-05-16 20:39:27 +02:00