Commit graph

12 commits

Author SHA1 Message Date
Imugiii
88c987c2b2 fix(borne): persiste et garde le mode de consommation (corrige 422 INVALID_SERVICE_MODE au paiement)
All checks were successful
CI / secret-scan (pull_request) Successful in 10s
CI / php-lint (pull_request) Successful in 24s
CI / static-tests (pull_request) Successful in 48s
CI / js-tests (pull_request) Successful in 30s
CI / php-lint (push) Successful in 26s
CI / static-tests (push) Successful in 1m11s
CI / js-tests (push) Successful in 34s
CI / secret-scan (push) Successful in 11s
Le paiement borne echouait en POST /api/orders -> 422 INVALID_SERVICE_MODE car le
mode de consommation (sur place / a emporter) n'atteignait jamais localStorage : la
1re page post-accueil (categories.html) ne chargeait pas nav.js, donc le ?mode= recu
de l'accueil n'etait pas persiste, et ses cartes statiques pointaient vers products.html
sans &mode=. Au paiement, mapServiceMode(null) -> service_mode null -> rejet serveur ;
le badge affichait en plus un faux 'Sur place' qui masquait l'absence de mode.

- categories.html : charge nav.js -> syncModeFromURL persiste le mode des l'etape
  categories (cause racine du 422 ; sans ca la garde ci-dessous bouclerait).
- nav.js : needsModeRedirect (helper pur) renvoie a l'accueil si une page hors accueil
  n'a pas de mode valide memorise ; modeLabel ne ment plus (vide si inconnu) ; listener
  DOMContentLoaded garde derriere typeof document -> module importable en test pur.
- page-payment.js : garde finale dans startCheckout (pas de soumission sans mode valide,
  retour accueil, panier conserve) + libelle recap honnete.
- tests/js/nav.test.js : table de verite des helpers + regression (categories.html charge nav.js).

Revue bmad-compliance : regression de flux normal identifiee (must_fix) corrigee. 92 tests JS verts.
2026-06-22 13:41:18 +00:00
545aa19cf1 feat(borne): tailles 30/50cl boissons a la carte (R4) (#88)
All checks were successful
CI / secret-scan (push) Successful in 18s
CI / php-lint (push) Successful in 33s
CI / static-tests (push) Successful in 1m9s
CI / js-tests (push) Successful in 41s
2026-06-22 14:07:46 +02:00
034038a31f feat(orders): UI modificateurs composeur comptoir/drive (R3c) (#87)
All checks were successful
CI / secret-scan (push) Successful in 13s
CI / php-lint (push) Successful in 28s
CI / static-tests (push) Successful in 56s
CI / js-tests (push) Successful in 31s
2026-06-22 13:39:30 +02:00
6347c66a7e feat(orders): composeur de menus (slots + format) saisie comptoir/drive (#86)
All checks were successful
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 48s
CI / js-tests (push) Successful in 28s
2026-06-22 12:28:13 +02:00
66aaa77f87 feat(borne): police OpenDyslexic auto-hebergee + bascule accessibilite (RGAA Cr 1.c.2) (#73)
All checks were successful
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 24s
2026-06-22 08:38:46 +02:00
7575d0458a feat(borne): soumission reelle de commande + ecran chevalet (P5 L4) (#68)
All checks were successful
CI / secret-scan (push) Successful in 11s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 54s
CI / js-tests (push) Successful in 28s
2026-06-19 20:02:01 +02:00
22a4bacc22 feat(borne): modale options produit + grille en modales (P5 L3) (#66)
All checks were successful
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 54s
CI / js-tests (push) Successful in 29s
2026-06-19 18:41:57 +02:00
6e5a5f9334 feat(borne): composeur menu pilote par les slots /api/menus (P5 L2) (#65)
All checks were successful
CI / secret-scan (push) Successful in 11s
CI / php-lint (push) Successful in 31s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 33s
2026-06-19 18:30:38 +02:00
c73afdf471 feat(borne): panneau commande persistant + bandeau categories (P5 L1) (#64)
All checks were successful
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 53s
CI / js-tests (push) Successful in 26s
2026-06-19 16:54:47 +02:00
7a0702ff6e feat(borne): cablage de la borne sur l'API (CORS + data.js) (#61)
All checks were successful
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 52s
CI / js-tests (push) Successful in 26s
2026-06-18 16:46:17 +02:00
60535bbe00 feat(admin): modal de re-autorisation PIN (#52)
All checks were successful
CI / secret-scan (push) Successful in 15s
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 1m5s
CI / js-tests (push) Successful in 32s
CI / auto-merge (push) Has been skipped
2026-06-18 13:17:59 +02:00
1ecd78324c feat(borne): modale allergenes generale (14 INCO) sur carte et fiche + harnais tests JS (P3) (#36)
All checks were successful
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 42s
CI / js-tests (push) Successful in 18s
CI / auto-merge (push) Has been skipped
2026-06-17 12:10:46 +02:00