#!/usr/bin/env bash
# Contrôle des corrections de contraste (MG-111).
#
# Vérifie qu'aucune page ne pose de texte blanc sur les teintes d'origine
# #C88772 (2,93:1) et #7895A5 (3,16:1), et que celles-ci subsistent bien
# pour le décor et les textes sur fond clair.
B="http://localhost:8080"

PAGES="/ /qui-suis-je /approche /cabinet /visio /ateliers /faq /contact
       /mentions-legales /politique-confidentialite"

echo "── Texte blanc sur teinte d'origine (doit être 0 partout) ──"
total=0
for u in $PAGES; do
    page=$(mktemp)
    curl -s "$B$u" > "$page"
    # Fonds pleins portant explicitement du texte blanc.
    n=$(grep -o 'background:#C88772; color:#FFFFFF\|background:#7895A5; color:#FFFFFF' "$page" | wc -l)
    # Sections et pastilles à fond d'origine (le texte blanc y est porté par les enfants).
    m=$(grep -o 'background:#7895A5;\|background:#C88772;' "$page" | wc -l)
    total=$((total + n + m))
    printf '  %-28s direct=%s  fonds=%s\n' "$u" "$n" "$m"
    rm -f "$page"
done
printf '  %-28s %s\n' "TOTAL" "$total"

echo
echo "── Teintes accessibles en place ──"
for u in / /qui-suis-je /visio /ateliers /contact; do
    page=$(mktemp)
    curl -s "$B$u" > "$page"
    printf '  %-28s terracotta=%s  bleu=%s\n' "$u" \
        "$(grep -o '#A85E44' "$page" | wc -l)" \
        "$(grep -o '#5C7A8B' "$page" | wc -l)"
    rm -f "$page"
done

echo
echo "── Teintes d'origine conservées pour le décor ──"
printf '  glyphes et pictogrammes sur /       : %s\n' "$(curl -s "$B/" | grep -o 'C88772' | wc -l)"
printf '  filet de citation sur /qui-suis-je  : %s\n' "$(curl -s "$B/qui-suis-je" | grep -o 'border-left:3px solid #C88772' | wc -l)"
printf '  numéros bleus sur /visio            : %s\n' "$(curl -s "$B/visio" | grep -o 'color:#7895A5' | wc -l)"
printf '  moitiés du rideau (CSS source)      : %s\n' \
    "$(grep -c 'mg-top {.*#C88772\|mg-bot {.*#7895A5' /home/maxime/projets/gaquere/assets/styles/app.css)"
