Files
xamxam/TODO.md
Pontoporeia 62eee63f80 fix(admin): add aria-current nav indicator + fix undefined --admin-purple variable
WCAG 1.4.1 — Active nav link had no non-colour indicator in the admin panel.
Public nav already had border-bottom via common.css; admin nav had nothing.

admin.css:
- Add `[aria-current="page"]` rule on admin nav links:
    border-bottom: 2px solid currentColor; padding-bottom: 1px
  This gives a visible underline as a non-colour signal for the active page.

- Fix `--admin-purple` undefined CSS variable in pagination button hover.
  The variable was referenced but never defined in variables.css (which was
  refactored to use --accent-primary / --accent-secondary). Replaced both
  border-color and color usages with var(--accent-primary) (#9557b5 — same
  value), restoring the intended purple hover tint on pagination buttons.

todo/01-css-semantic-refactor.md:
- Audited ~15 pending CSS/HTML tasks; all were already implemented.
  Marked as done: .admin-main, .admin-page-title, .admin-form-row,
  .admin-label, .admin-input/select/textarea, .admin-table, .admin-fieldset,
  tfe.css class replacements, search.css h2 selector, admin-alert replacement,
  login.php/edit.php inline style removal, form partial hints (<small>).

todo/04-accessibility.md:
- Marked WCAG 1.4.1 admin nav and --admin-purple audit items as completed.
2026-04-06 15:33:08 +02:00

3.0 KiB

TODO

Pending tasks have been split into topic files under todo/:

File Topic
todo/01-css-semantic-refactor.md CSS class audit, semantic HTML (public + admin), inline style extraction, favicon
todo/02-php-components.md Form field partials, shared UI partials, controller extraction, backend maintenance
todo/03-system-cache.md system_cache table, SystemCache class, system.php refactor
todo/04-accessibility.md WCAG 2.1 AA — remaining failures grouped by success criterion

Recently completed (this session)

  • admin.css — added [aria-current="page"] rule for admin nav links (border-bottom: 2px solid currentColor; padding-bottom: 1px) fixing WCAG 1.4.1 (active nav link had no non-colour indicator)

  • admin.css — fixed undefined --admin-purple variable in pagination hover; replaced with --accent-primary (same #9557b5 value)

  • todo/01-css-semantic-refactor.md — audited all CSS/HTML refactor tasks; marked ~15 items as already-done (.admin-main, .admin-page-title, .admin-form-row, .admin-label, .admin-input/select/textarea, .admin-table, .admin-fieldset, tfe.css class replacements, search.css selector, login.php/edit.php inline styles, admin-alert replacement, form partial hints)

  • todo/04-accessibility.md — marked WCAG 1.4.1 admin nav and --admin-purple audit items as completed

  • admin/index.php — server-side pagination (25/page); Database::getThesesListCount() added; getThesesList() extended with $limit/$offset; access_type JOIN added to query (was missing); result-count meta line added; .pagination-wrap + .pagination-btn + .pagination-info styles added to admin.css

  • checkbox-list.php — replaced <div class="admin-checkbox-list"> with <fieldset class="admin-checkbox-group"><legend class="sr-only">…</legend><ul> (WCAG 1.3.1 fix)

  • admin.css — replaced .admin-checkbox-list with .admin-body fieldset.admin-checkbox-group > ul semantic selectors; added span.admin-row-label as visible label column counterpart

  • login.php — wrapped content in <main id="main-content"> landmark

  • account.php<div class="admin-account-status"><dl>; __row divs kept; __label spans → <dt>; admin-danger-zone__description div → <p>

  • index.php — maintenance bar <div><aside role="status" aria-label="Statut du site">

  • add.php / edit.phpautocomplete="name" on author field, autocomplete="email" on contact field

  • tags.php — all inline style= attributes removed; sizing/spacing moved to CSS (.admin-input--inline, .admin-select--inline, .admin-inline-form + .admin-inline-form, .admin-tags-count)

  • Marked already-done items in todo files: stats <dl>, thanks.php <section>, scope="col" on both tables, tfe.php inline styles, role="alert" on flash messages