feat(borne): ecran categories alimente par /api/categories #125

Merged
Corentin merged 1 commit from feat/borne-categories-dynamiques into dev 2026-07-31 10:26:37 +02:00
Owner
No description provided.
feat(borne): ecran categories alimente par /api/categories
All checks were successful
CI / secret-scan (push) Successful in 15s
CI / php-lint (push) Successful in 25s
CI / static-tests (push) Successful in 1m2s
CI / js-tests (push) Successful in 37s
CI / php-lint (pull_request) Successful in 23s
CI / static-tests (pull_request) Successful in 1m1s
CI / js-tests (pull_request) Successful in 38s
CI / secret-scan (pull_request) Successful in 11s
369c1a003a
L'ecran categories portait une liste de 9 cartes ecrite en dur : une categorie
desactivee, renommee, reordonnee ou ajoutee en back-office restait invisible ou
fausse sur le premier ecran post-accueil, alors que le bandeau de l'ecran suivant
consommait deja l'API.

page-categories.js reprend le decoupage de category-strip.js : buildGridModel
(pur), renderGridInto (DOM sans reseau), renderCategoryGrid (chargeur injecte,
donc branche d'echec testable sans toucher au fetch global). Le chargeur
loadCategories existait deja et etait memoise par promesse : la page s'y branche,
data.js est inchange.

Details qui comptent :
- href en correspondance exacte products.html?category=<id>, sans propager mode=
  (nav.js persiste deja le mode sur cette page ; le parcours E2E cible ce
  selecteur au caractere pres)
- une categorie sans image n'emet aucune balise img plutot qu'une source vide
- repli d'image par data-fallback delegue, aucun handler en ligne (CSP stricte)
- erreur de chargement et catalogue vide sont deux etats distincts a l'ecran
- classes CSS existantes reutilisees : aucun changement de feuille de style

Preuves realignees : la preuve RGAA affirmait que les cartes categorie
fonctionnaient sans JavaScript, ce lot rend l'affirmation fausse - reecrite avec
la reserve assumee. Corrige au passage une affirmation perimee de la meme preuve
qui decrivait encore un onerror en ligne, retire lors du passage en CSP stricte.
Validation W3C des 5 pages servies rejouee sur le nouveau balisage : 0 message,
artefact inchange.

15 tests JS ajoutes (175 verts au total), 495 tests PHP inchanges.
Corentin scheduled this pull request to auto merge when all checks succeed 2026-07-31 10:21:54 +02:00
Sign in to join this conversation.
No reviewers
No labels
auto-merge
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AcadeNice/corentin_wakdo!125
No description provided.