Files
root c2cf08955b v2.6.1 (Lyra): Welcome page, 404 handling, installatie docs, opschoning
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
2026-08-17 14:48:46 +00:00

47 lines
2.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# Generate theme.png preview images for each theme using ImageMagick.
# Reads the theme's SCSS color variables and renders a simple page mockup.
set -euo pipefail
cd "$(dirname "$0")/../themes"
gen_preview() {
local dir="$1"
local scss="$dir/css/theme.scss"
if [[ ! -f "$scss" ]]; then
echo "Skip $dir (no theme.scss)"
return
fi
local header_bg header_font nav_bg nav_font sidebar_bg sidebar_border
header_bg=$(grep -oE '^\$header-bg:\s*[^;]+;' "$scss" | grep -oE '#[0-9a-fA-F]{6}' || echo "#0a369d")
header_font=$(grep -oE '^\$header-font:\s*[^;]+;' "$scss" | grep -oE '#[0-9a-fA-F]{6}' || echo "#ffffff")
nav_bg=$(grep -oE '^\$nav-bg:\s*[^;]+;' "$scss" | grep -oE '#[0-9a-fA-F]{6}' || echo "#2754b4")
nav_font=$(grep -oE '^\$nav-font:\s*[^;]+;' "$scss" | grep -oE '#[0-9a-fA-F]{6}' || echo "#ffffff")
sidebar_bg=$(grep -oE '^\$sidebar-bg:\s*[^;]+;' "$scss" | grep -oE '#[0-9a-fA-F]{6}' || echo "#f8f9fa")
sidebar_border=$(grep -oE '^\$sidebar-border:\s*[^;]+;' "$scss" | grep -oE '#[0-9a-fA-F]{6}' || echo "#dee2e6")
local size=640x400
local body_bg="#ffffff"
# Header bar
convert -size "$size" xc:"$body_bg" \
-fill "$header_bg" -draw "rectangle 0,0 639,70" \
-fill "$nav_bg" -draw "rectangle 0,70 639,95" \
-fill "$sidebar_bg" -draw "rectangle 0,95 180,399" \
-fill "$header_font" -font DejaVu-Sans-Bold -pointsize 20 -annotate +15+22 "$(basename "$dir")" \
-fill "$header_font" -font DejaVu-Sans -pointsize 13 -annotate +15+45 "CodePress" \
-fill "$nav_font" -font DejaVu-Sans -pointsize 12 -annotate +15+85 "Home | Over | Blog" \
-fill "#666666" -font DejaVu-Sans -pointsize 14 -annotate +200+130 "Welkom bij $(basename "$dir")" \
-fill "#999999" -font DejaVu-Sans -pointsize 11 -annotate +200+155 "Dit is een voorbeeld van het thema." \
-fill "#cccccc" -draw "rectangle 200,400 639,399" \
"$dir/theme.png"
echo "Generated $dir/theme.png"
}
for d in */; do
d="${d%/}"
gen_preview "$d"
done