mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-05-06 19:19:19 +02:00
- Create app/public/index.php as front controller (bootstrap + Dispatcher) - Rewrite app/router.php for PHP dev server → all non-asset requests to index.php - Update Dispatcher to render full page layouts (head+header+view+footer) - Move public view templates into templates/public/ (home, search, tfe, about, repertoire) - Delete dead direct-access public/*.php files (apropos, search, tfe, licence, repertoire) - Add clean URL routes to Dispatcher (/search, /tfe, /repertoire, /apropos, /licence, /media) - Remove .php extensions from all internal links (header, views, templates, URLs) - Update OG tags in controllers to use clean URLs - Update nginx posterg.conf → front-controller try_files pattern, block direct .php access - Update header.php and search-bar.php form actions to clean URLs - Switch AboutController nav key from 'nav' to 'currentNav' for consistency
72 lines
3.5 KiB
Markdown
72 lines
3.5 KiB
Markdown
# TODO
|
|
|
|
- [x] Replace inline alert CSS in admin.css with floating bottom-center toast styles (fixed, z-index, animation)
|
|
- [x] Update flash-messages.php partial to output `.toast` markup in hidden container for footer JS
|
|
- [x] Add toast container HTML + JS to admin footer.php (centralised, 4s auto-dismiss with fade-out)
|
|
- [x] Remove redundant flash-messages.php includes from all admin pages (8 files)
|
|
- [x] Convert hardcoded alerts in login.php, thanks.php, index.php import to `.toast` class
|
|
- [x] Update admin.css dialog rule from `[role=alert/status]` to `.toast`
|
|
- [x] Commit with jj
|
|
|
|
- [x] Move DB export from admin/index.php to admin/parametres.php (maintenance section)
|
|
|
|
- [x] Reorganize src/ - move 7 controllers to src/Controllers/
|
|
- [x] Create Controllers directory
|
|
- [x] Move controller files (Home, Tfe, Search, ThesisCreate, ThesisEdit, Export, System)
|
|
- [x] Update all require_once paths across codebase
|
|
|
|
- [x] Move stray test.db from root to storage/
|
|
|
|
- [x] Store admin password hash in DB (site_settings) instead of config file
|
|
- [x] Create migration 013
|
|
- [x] Update AdminAuth to read hash from DB
|
|
- [x] Update bootstrap.php — remove credential file loading
|
|
- [x] Update parametres.php — status check from DB
|
|
- [x] Update actions/account.php — write hash to DB
|
|
- [x] Update login.php — dev-mode check
|
|
- [x] Update header.php — dev check
|
|
- [x] Delete config/admin_credentials.example.php
|
|
|
|
## Now: Single Entry Point Routing
|
|
|
|
### Phase 1: Dispatcher refinement
|
|
- [x] MediaController: extract media.php logic into MediaController class
|
|
- [x] Create src/Controllers/MediaController.php
|
|
- [x] Move path validation + storage jail + MIME check + streaming
|
|
- [x] Wire into Dispatcher for /media route
|
|
- [x] Delete app/public/media.php
|
|
- [ ] Update Dispatcher to handle all routes directly (no require APP_ROOT/public/*.php)
|
|
|
|
### Phase 2: Single entry point
|
|
- [x] Create app/public/index.php as front controller
|
|
- [x] Move bootstrap logic into entry point (bootstrap.php stays for admin)
|
|
- [x] Load and invoke Dispatcher
|
|
- [x] Move old public/*.php views into templates/public/
|
|
- [x] search.php → templates/public/search.php
|
|
- [x] tfe.php → templates/public/tfe.php
|
|
- [x] apropos.php → templates/public/about.php
|
|
- [x] repertoire.php → templates/public/repertoire.php
|
|
- [x] Delete old direct-access public/*.php files
|
|
- [x] Delete public/index.php (replaced by front controller)
|
|
- [x] Delete public/search.php
|
|
- [x] Delete public/tfe.php
|
|
- [x] Delete public/apropos.php
|
|
- [x] Delete public/licence.php
|
|
- [x] Delete public/repertoire.php
|
|
- [x] Update Dispatcher.render to use templates/public/ views
|
|
- [x] Update Dispatcher to render full pages (head + header + view + footer) instead of requiring bootstrap
|
|
- [x] Ensure admin/index.php bootstraps its own path (not affected by front controller)
|
|
|
|
### Phase 3: Server config
|
|
- [ ] Update router.php — route all PHP requests to Dispatcher
|
|
- [ ] Update nginx config — point all public routes to index.php via try_files
|
|
- [ ] Replace per-file `location ~ \.php$` with front-controller pattern
|
|
- [x] Clean URL updates
|
|
- [x] Remove .php from all internal links (header, views, controllers)
|
|
- [x] Add clean routes to Dispatcher (/search, /tfe, /media)
|
|
- [x] Update og:url tags in controllers to use clean URLs
|
|
- [x] Update TfeController redirect to /
|
|
- [x] Update header.php action URLs
|
|
- [x] Commit current state
|
|
- [ ] Test all routes (/, /search, /tfe, /repertoire, /apropos, /licence, /media, /live-reload)
|