Imugiii
68b3f9c46c
fix(borne): affiche la variante Grande de l'accompagnement en menu Maxi
...
CI / php-lint (push) Successful in 25s
CI / js-tests (push) Successful in 27s
CI / static-tests (pull_request) Successful in 52s
CI / js-tests (pull_request) Successful in 27s
CI / secret-scan (push) Successful in 10s
CI / static-tests (push) Successful in 52s
CI / secret-scan (pull_request) Successful in 10s
CI / php-lint (pull_request) Successful in 23s
Un menu commande en Maxi affichait "Moyenne Frite grande" : le nom de base
de l'accompagnement (Moyenne) plus un suffixe " grande" trompeur. Le serveur
substitue deja Moyenne -> Grande a la commande (maxi_variant_product_id) ;
seul l'affichage borne mentait.
Fix d'affichage + petite extension API pour l'alimenter :
- API : ProductRepository expose mv.name AS maxi_variant_name via un LEFT JOIN
sur la variante Maxi (liste + detail) ; CatalogueController::presentProduct
emet maxi_variant_name (null sans variante).
- data.js : mappe maxi_variant_name -> maxiNom sur le produit borne.
- page-product-menu.js : le composeur affiche maxiNom en Maxi au moment du
CHOIX (optionLabel) ; buildMenuCartItem pose libelle = variante en Maxi.
- order-panel.js / page-cart.js : suppression du suffixe " grande" -- le
libelle porte deja le bon nom ; le suffixe doublait ("Grande Frite grande")
et mentait pour la boisson (le menu Maxi ne l'agrandit pas).
La resolution serveur (OrderRepository::resolveSelections) est inchangee.
Tests JS et PHP unit etendus ; taille reste pose mais n'est plus affiche.
2026-06-22 14:15:11 +00:00
042c30a5fe
fix(borne): persiste + garde le mode de consommation (corrige 422 paiement) ( #89 )
CI / secret-scan (push) Successful in 14s
CI / php-lint (push) Successful in 30s
CI / static-tests (push) Successful in 1m1s
CI / js-tests (push) Successful in 30s
2026-06-22 15:43:32 +02:00
545aa19cf1
feat(borne): tailles 30/50cl boissons a la carte (R4) ( #88 )
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 )
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 )
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
5cc879c3ea
feat(orders): saisie commande comptoir/drive - fondation produits (mlt 4.1) ( #85 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 27s
2026-06-22 12:09:11 +02:00
ea1654c21a
feat(menu): accompagnement Maxi en variante Grande automatique (variante en base) ( #84 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 24s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 32s
2026-06-22 11:52:04 +02:00
741cfdb02b
feat(orders): annulation de commande (CANCEL_ORDER) - PIN + audit + restock (mlt 7.1) ( #83 )
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 25s
2026-06-22 11:35:55 +02:00
10705858ac
feat(stock): enrichissement nutritionnel via API externe OpenFoodFacts (Cr 3.a.3) ( #79 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 26s
2026-06-22 09:31:15 +02:00
80919f62c1
feat(orders): KDS cuisine + transition paid vers delivered (P3 operationnel) ( #81 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 43s
CI / js-tests (push) Successful in 33s
2026-06-22 09:28:39 +02:00
cb990404e3
feat(api): suivi public du statut commande GET /api/orders/{number} (P4) ( #77 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 26s
2026-06-22 08:53:36 +02:00
66aaa77f87
feat(borne): police OpenDyslexic auto-hebergee + bascule accessibilite (RGAA Cr 1.c.2) ( #73 )
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
121877ea65
feat(admin): page d'information RGPD sur le traitement des donnees (Cr 3.d.2) ( #72 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 27s
2026-06-22 08:29:22 +02:00
7ab9a5a8cf
feat(api): endpoint public /api/allergens (P4 optionnel) ( #71 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 25s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 29s
2026-06-19 20:30:12 +02:00
1d56d5b574
feat(admin): liste des commandes + KPIs de vente (P4) ( #70 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 24s
2026-06-19 20:24:33 +02:00
7575d0458a
feat(borne): soumission reelle de commande + ecran chevalet (P5 L4) ( #68 )
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 )
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 )
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 )
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 )
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
a35db88d2f
feat(api): P4 chunk 2 - read API catalogue borne (categories/produits/menus) ( #60 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 44s
CI / js-tests (push) Successful in 27s
2026-06-18 16:10:36 +02:00
60ce3460a5
feat(api): P4 chunk 1b - encaissement + decrement stock ( #57 )
CI / secret-scan (push) Successful in 18s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 55s
CI / js-tests (push) Successful in 31s
CI / auto-merge (push) Has been skipped
2026-06-18 14:29:22 +02:00
29a191e506
feat(api): P4 chunk 1a - creation de commande + chevalet ( #55 )
CI / secret-scan (push) Successful in 10s
CI / js-tests (push) Successful in 35s
CI / auto-merge (push) Has been skipped
CI / php-lint (push) Successful in 29s
CI / static-tests (push) Successful in 1m5s
2026-06-18 14:09:35 +02:00
1697b94b62
feat(admin): humanise les libelles restants (Reference/Variation/Auteur) ( #54 )
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 21s
CI / js-tests (push) Successful in 24s
CI / auto-merge (push) Has been skipped
CI / static-tests (push) Successful in 52s
2026-06-18 13:45:46 +02:00
60535bbe00
feat(admin): modal de re-autorisation PIN ( #52 )
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
1b29cd420f
feat(admin): dashboard donnees reelles (lot 2) ( #50 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 30s
CI / auto-merge (push) Has been skipped
2026-06-18 12:24:43 +02:00
68a2690b98
test(e2e): parcours admin Playwright + fix cookie Secure conditionnel (ADR-0010) ( #46 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 43s
CI / js-tests (push) Successful in 24s
CI / auto-merge (push) Has been skipped
2026-06-17 17:07:35 +02:00
aef6174b5b
test(e2e): parcours borne Playwright (conteneur, stack jetable) ( #45 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 25s
CI / js-tests (push) Successful in 30s
CI / static-tests (push) Successful in 47s
CI / auto-merge (push) Has been skipped
2026-06-17 16:38:33 +02:00
d880f2512a
feat(admin): RBAC - matrice roles/permissions + roles custom (PIN+audit diff) (P3) ( #39 )
CI / php-lint (push) Successful in 21s
CI / js-tests (push) Successful in 21s
CI / secret-scan (push) Successful in 10s
CI / static-tests (push) Successful in 44s
CI / auto-merge (push) Has been skipped
2026-06-17 14:25:42 +02:00
e430f54d85
feat(admin): gestion des comptes back-office (CRUD users + RGPD, PIN+audit) (P3) ( #38 )
CI / js-tests (push) Successful in 19s
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 45s
CI / auto-merge (push) Has been skipped
2026-06-17 13:49:02 +02:00
9c2844c116
feat(admin): tableau de bord statistiques (catalogue + sante stock RG-T21) (P3) ( #37 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 44s
CI / js-tests (push) Successful in 18s
CI / auto-merge (push) Has been skipped
2026-06-17 12:37:58 +02:00
1ecd78324c
feat(borne): modale allergenes generale (14 INCO) sur carte et fiche + harnais tests JS (P3) ( #36 )
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
ed392d4c14
feat(admin): recettes produit - composition product_ingredient + dispo calculee RG-T21 (P3, ferme #27 ) ( #35 )
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 17s
CI / static-tests (push) Successful in 39s
CI / auto-merge (push) Has been skipped
2026-06-17 11:29:07 +02:00
1f4b9478ca
feat(admin): stock ingredients - CRUD, restock, inventaire PIN, mouvements (P3, mlt 8.8 + domaine 9) ( #34 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 39s
CI / auto-merge (push) Has been skipped
2026-06-17 11:11:31 +02:00
0666a22562
fix(admin): conflits HTTP 409 au lieu de 422 (delete FK-bloque + course unicite) ( #33 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 53s
CI / auto-merge (push) Has been skipped
2026-06-17 10:11:28 +02:00
c2a4854083
feat(admin): CRUD menus composes avec slots (P3, mlt 8.4-8.6) ( #32 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 48s
CI / auto-merge (push) Has been skipped
2026-06-16 15:39:09 +02:00
2cc499dc71
fix(admin): lien decouvrable vers la page de definition du PIN ( #28 )
CI / secret-scan (push) Has been cancelled
CI / php-lint (push) Has been cancelled
CI / static-tests (push) Has been cancelled
CI / auto-merge (push) Has been cancelled
2026-06-16 14:21:42 +02:00
c284c840d0
fix(admin): retire les liens de nav vers des pages non construites ( #23 )
CI / secret-scan (push) Has been cancelled
CI / static-tests (push) Has been cancelled
CI / auto-merge (push) Has been cancelled
CI / php-lint (push) Has been cancelled
2026-06-16 14:21:35 +02:00
6557dd9c6c
fix(auth): leurre anti-enumeration sur la demande de reset ( #26 )
CI / secret-scan (push) Has been cancelled
CI / static-tests (push) Has been cancelled
CI / php-lint (push) Has been cancelled
CI / auto-merge (push) Has been cancelled
2026-06-16 14:20:59 +02:00
ad5203d3fc
feat(admin): throttle du PIN d action sensible par acteur (RG-T22) ( #18 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 32s
CI / auto-merge (push) Has been skipped
2026-06-16 00:06:33 +02:00
2756fb4080
feat(admin): CRUD produits avec PIN conditionnel et audit ( #17 )
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 36s
CI / auto-merge (push) Has been skipped
2026-06-15 22:35:50 +02:00
f63ac9873c
feat: PIN self-service P3 (/admin/profile/pin) ( #16 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 35s
CI / auto-merge (push) Has been skipped
2026-06-15 22:04:14 +02:00
8290ceabc4
feat: CRUD categories P3 (rendu serveur, garde + CSRF + validation) ( #15 )
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 27s
CI / auto-merge (push) Has been skipped
2026-06-15 21:45:31 +02:00
2bc22ab5c8
feat: shell back-office P3 (pages rendues serveur + garde) ( #14 )
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 16s
CI / static-tests (push) Successful in 30s
CI / auto-merge (push) Has been skipped
2026-06-15 21:25:06 +02:00
7c35f8e2dc
feat: PIN d action sensible P2 (PinVerifier RG-T13) ( #13 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 16s
CI / static-tests (push) Successful in 30s
CI / auto-merge (push) Has been skipped
2026-06-15 21:00:11 +02:00
f979a2339e
feat: RBAC P2 (autorisation par permission + garde de session + /api/me) ( #12 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 33s
CI / auto-merge (push) Has been skipped
2026-06-15 20:45:19 +02:00
1b0b20c12d
feat: authentification back-office P2 (login/logout/reset, throttle, audit) ( #11 )
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 17s
CI / static-tests (push) Successful in 32s
CI / auto-merge (push) Has been skipped
2026-06-15 20:18:59 +02:00
c8f5370cfd
refactor(core): src/app structure + fix auto-merge label gate ( #10 )
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 32s
CI / auto-merge (push) Has been skipped
2026-06-15 17:01:10 +02:00
Imugiii
8c93b26ec0
feat(core): from-scratch PHP MVC skeleton (autoloader/config/PDO/router/front controller) + PHPUnit/PHPStan + composer-less CI
2026-06-15 14:13:49 +00:00