Files
xamxam/TODO.md
Pontoporeia df70fba5d4 feat: convert all file inputs to FilePond for standardized uploading
- Add csv_import queue type (storeAsFile, no async upload) for CSV import dialog
- Convert file-field.php partial to FilePond with field-name→queue-type mapping
- Conditionally skip server config for storeAsFile queues in buildFilePondOptions
- Skip FilePond init for inputs inside closed <dialog> elements
- Trigger FilePond init when import dialog opens
- Load FilePond CSS/JS assets on admin index page
2026-06-09 13:12:22 +02:00

892 B

TODO

  • Convert all file inputs to FilePond (CSV import, file-field.php; fix dialog init + missing CSS/JS on index page)
  • Fix account.php: replace !== CSRF token check with hash_equals (constant-time comparison)
  • Fix ShareLink::setPassword(): also encrypt and store plain-text password, matching create() behavior
  • Audit: confirm all remaining credential comparison sites use constant-time hash_equals or password_verify
  • Fix .gitignore: anchor vendor/ to root (/vendor/) so app/public/assets/js/vendor/ (htmx, OverType, FilePond) is tracked
  • Fix migration 025_lowercase_languages.sql: deduplicate languages before LOWER() to avoid UNIQUE constraint violation (Néerlandais/néerlandais)
  • Fix home page: load ALL published theses grouped by year (desc), shuffled randomly within each year (instead of only ~20 from latest year)