mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-06-25 16:19:19 +02:00
fix: add help email, preserve file names on validation error, license fix
The share link (partage) form does not expose a license field and does not send access_type_id (defaults to 2/Interne). Server-side validation was unconditionally requiring a license for non-admin submissions, causing all share link submissions to fail. Now the license check is gated on adminMode=false AND accessTypeId=1 (Libre), matching the client-side HTMX fragment behaviour in licence-fragment.php. Also fixed a use-before-definition where accessTypeId was referenced before being assigned. Student form improvements: - Add xamxam@erg.be mailto link at top of form - On validation error, append "Si le problème persiste, envoyez un e-mail à xamxam@erg.be" to the flash message - Preserve uploaded file names across validation redirects: store in session (share_primed_files_<slug>), display as warning on form re-render so the student knows which files to re-select - License: only required for non-admin when access_type_id=1 (Libre), not for Interne (2) or Interdit (3). Fixes share link submissions failing with "Veuillez sélectionner une licence". Also fixed use-before-definition of accessTypeId.
This commit is contained in:
22
TODO.md
22
TODO.md
@@ -4,3 +4,25 @@
|
||||
- [x] Both fragments now follow identical patterns
|
||||
- [x] Fix "Créer" button not appearing on language search: both language and tag inputs used name="q" in the same form, causing HTMX to submit the wrong (empty) value — renamed to unique names (language_search_q / tag_search_q)
|
||||
- [x] Exclude Français, Anglais, Néerlandais from language-search suggestions (handled by the checkbox list)
|
||||
- [x] Refactor file upload naming convention
|
||||
- [x] Create shared ThesisFileHandler trait (src/Controllers/ThesisFileHandler.php)
|
||||
- [x] New pattern: theses/{YYYY}/{YYYY}_{AUTHORS}_{TITLE_SLUG}/
|
||||
- [x] COUVERTURE: single cover image in thesis folder (covers/ directory deprecated)
|
||||
- [x] NOTE_INTENTION: single PDF in thesis folder
|
||||
- [x] TFE_{XX}: main files, contiguous numbering 01+, hierarchy PDF > video > audio > subtitles > images > other
|
||||
- [x] Subtitles (VTT) placed immediately after their associated video in TFE sequence
|
||||
- [x] ANNEXE_{XX}: annex files, separate numbering 01+
|
||||
- [x] Two-digit zero-padded numbering (sprintf('%02d', ...))
|
||||
- [x] Update ThesisCreateController.php: use trait, new file handling
|
||||
- [x] Update ThesisEditController.php: use trait, new file handling
|
||||
- [x] Remove duplicate methods (generateAuthorSlug, sanitizeFilename, etc.) from both controllers
|
||||
- [x] Update Database.php: deprecate handleCoverUpload, remove banner_path from queries
|
||||
- [x] Update SystemController.php: remove banners/ stats
|
||||
- [x] Update schema.sql: remove banner_path column and view field
|
||||
- [x] Create migration 027_drop_banner_path.sql
|
||||
- [x] Update PureLogicTest.php: adapt detectFileType call signature
|
||||
- [x] All pure logic tests pass
|
||||
- [x] Fix license validation: only require license for non-admin when access_type_id=1 (Libre), not for Interne (2) or Interdit (3) — fixes share link submissions failing with "Veuillez sélectionner une licence"
|
||||
- [x] Add xamxam@erg.be mailto link at top of student (partage) form
|
||||
- [x] On validation error, append "envoyez un e-mail à xamxam@erg.be" to flash error message
|
||||
- [x] Preserve uploaded file names across validation redirects: store in session, display as warning on re-render so the student knows which files to re-select
|
||||
|
||||
Reference in New Issue
Block a user