Nieuwe features: - Welkomstpagina bij lege content-map (nieuwe installatie detectie) - 404-afhandeling binnen actieve theme via admin/static/404.html - HTTP 404 status bij onbekende pagina's en missende taalprefix Opschoning: - Verwijderd: package.json, src/scss/, root .htaccess, themes/demo/ - Verwijderde vendor packages: php-mqtt/client, mustache/mustache - AGENTS.md samengevoegd naar root, development/AGENTS.md verwijderd - .gitignore opgeschoond (NPM/node_modules/.sass-cache verwijderd) Documentatie: - Installatie instructies toegevoegd aan README (Apache2/Nginx/PHP/composer) - README en guide versie referenties bijgewerkt naar 2.6.1 - Release notes: docs/release-notes/v2.6.1.md Tests: - Pentest: 30/30 geslaagd, 0 vulnerabilities - WCAG 2.1 AA: 25/25 geslaagd, 100% compliance - Test scripts gebruiken Apache-URL i.p.v. localhost:8080
66 lines
4.0 KiB
Markdown
66 lines
4.0 KiB
Markdown
# TODO
|
|
|
|
## Voor elke versie verhoging. Deze nooit weghalen.
|
|
- [ ] Pentest controles uitgevoerd
|
|
- [ ] WCAG 2.1 AA accessibility tests
|
|
- [ ] Volledige git commit maken.
|
|
- [ ] Verslag maken voor opdrcht gever
|
|
- [ ] Na convormatie versie verhogen
|
|
- [ ] Bij Voltooid versie ophoging aanmaken en deze allemaal unvinken voor volgende ronde.
|
|
|
|
## Te doen ⏳
|
|
|
|
- [ ] Multidomein implementeren (elk domein = eigen thema + content, één admin + site name)
|
|
- [ ] Fase 1: Config-resolutie
|
|
- [ ] For apache instants domein settings /public/noorlander.info/ or /public/mycode.name/
|
|
- [ ] config.domains.json (registry: host, aliases, redirect, config) + .example
|
|
- [ ] cms/core/domain.php: normalizeHost/getDomainRegistry/resolveDomain/loadSiteConfigForHost
|
|
- [ ] cms/core/config.php refactor → herbruikbare functie, compatibel blijven
|
|
- [ ] Per-domein config-bestanden (content_dir, active_theme) in the main content dir. like: /content/domain1 /content/domain2 os /content/noorlander.info/ /content/mycode.name/
|
|
- [ ] Fase 2: Front-end
|
|
- [ ] cms/router.php: taal-prefix dynamisch uit actieve config
|
|
- [ ] public/.htaccess: generieke `([a-z]{2})` taalregel
|
|
- [ ] CodePressCMS::getCurrentLanguage(): validatie via config['language']['available']
|
|
- [ ] getInternalHosts(): registry-hosts toevoegen (cross-domein links = intern)
|
|
- [ ] public/index.php: /-media/ en /-assets/ via actieve content_dir
|
|
- [ ] Fase 3: Admin (domeinbeheer + switch)
|
|
- [ ] admin/config/app.php: domains_json pad
|
|
- [ ] public/admin.php: $_SESSION['admin_domain'] + routes domains/domain-switch
|
|
- [ ] domains.twig + sidebar-item/badge in admin.twig
|
|
- [ ] Bestaande handlers laten werken op actief domein (config_json/content_dir patchen)
|
|
- [ ] Fase 4: Housekeeping
|
|
- [ ] .gitignore: config.*.json, content-*/
|
|
- [ ] AGENTS.md + config.json.example bijwerken
|
|
- [ ] Verificatie: php -l, curl met Host-header, domein-switch in admin testen
|
|
|
|
## Voltooid ✅
|
|
|
|
- [x] Admin code en niet gebruikte mappen/bestanden opschonen
|
|
- [x] version.php changelog verwijderen (staat in git)
|
|
- [x] Guide mappenstructuur reorganiseren (NL/EN → rollen)
|
|
- [x] README.md compacter maken met verwijzingen naar guide
|
|
- [x] Admin dashboard template check — Twig-commentaren `{# ... #}` verwijderd uit Dashboard.php
|
|
- [x] Plugins — zichtbaar verschil tussen system en content plugins (badge + border + icoon in plugins.twig)
|
|
- [x] Plugins — alleen actieve plugins zichtbaar in sidebar (PluginManager laadt alleen enabled plugins)
|
|
- [x] Plugins — dubbele enabled_plugins config opgelost (plugins.enabled verwijderd, alleen enabled_plugins op top-level)
|
|
- [x] Admin config — Analytics & Logging toggles verwijderd van config-pagina
|
|
- [x] Handleidingen gecontroleerd en bijgewerkt (20 bestanden NL+EN: configuratie, plugins, plugin-development, core-classes, theme-json, layouts, scss-styling, admin-beheerder, nieuw-thema, architectuur)
|
|
- [x] Content backup/restore optie + content-git repository integratie (ContentBackup class, content-backup.twig, ZIP backup/restore, git init/commit/log/restore)
|
|
- [x] Pentest controles uitgevoerd (30/30 tests geslaagd — 0 vulnerabilities)
|
|
- [x] WCAG 2.1 AA accessibility tests (25/25 tests geslaagd — 100% compliance, test-script verbeterd met min/max checks en grep -E)
|
|
|
|
## v2.6.1 (2026-08-17) ✅
|
|
- [x] Pentest controles uitgevoerd (30/30)
|
|
- [x] WCAG 2.1 AA accessibility tests (25/25)
|
|
- [x] README.md en handleidingen in guide/ doorgeloken en bijgewerkt
|
|
- [x] Installatie instructies toegevoegd aan README (Apache2/Nginx/PHP/composer)
|
|
- [x] Verwijderde vendor packages: php-mqtt/client, mustache/mustache (uit composer + autoloader)
|
|
- [x] Verslag gemaakt (docs/release-notes/v2.6.1.md)
|
|
- [x] Versie verhoogd naar 2.6.1
|
|
|
|
## v2.6.0 (2026-08-15) ✅
|
|
- [x] Pentest controles uitgevoerd (30/30)
|
|
- [x] WCAG 2.1 AA accessibility tests (25/25)
|
|
- [x] Verslag gemaakt (docs/release-notes/v2.6.0.md)
|
|
- [x] Versie verhoogd naar 2.6.0
|