2024-10-02
This commit is contained in:
parent
ff27cdf9a5
commit
5f9c6d85a1
33 changed files with 422 additions and 265 deletions
|
|
@ -137,10 +137,8 @@ html {
|
|||
|
||||
/**
|
||||
* 1. Utilise une couleur d'arrière-plan définie.
|
||||
* 2. Force une hauteur minimale de page occupant l'intégralité de la vue du navigateur.
|
||||
*/
|
||||
body {
|
||||
min-height: 100vh; /* 2 */
|
||||
background: var(--couleur-gris); /* 1 */
|
||||
}
|
||||
|
||||
|
|
@ -164,7 +162,7 @@ textarea {
|
|||
}
|
||||
|
||||
body {
|
||||
font: 1rem/1.4 Myriad;
|
||||
font: 1rem/1.4 Lato;
|
||||
color: var(--couleur-noir);
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
|
@ -350,6 +348,9 @@ ul.avec-puce-cercle a {
|
|||
padding: var(--nav-entree-marges-internes-bloc) var(--nav-entree-marges-internes-ligne); /* 2 */
|
||||
text-align: center; /* 4 */
|
||||
}
|
||||
#en-tete .menu-navigation__entree--courante {
|
||||
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud.svg") center/auto 90% no-repeat;
|
||||
}
|
||||
@media (hover: hover) {
|
||||
#en-tete .menu-navigation__entree:hover {
|
||||
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud.svg") center/auto 90% no-repeat;
|
||||
|
|
@ -422,6 +423,9 @@ ul.avec-puce-cercle a {
|
|||
* 3. Surchargement de styles pour les liens.
|
||||
*/
|
||||
}
|
||||
#menu-categories-produits ul li.categorie-courante a {
|
||||
color: var(--couleur-jaune);
|
||||
}
|
||||
#menu-categories-produits ul li:active a {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
|
@ -507,7 +511,6 @@ ul.avec-puce-cercle a {
|
|||
grid-auto-rows: 1fr;
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr)); /* 1 */
|
||||
gap: 1px; /* 2 */
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
.grille-produits article {
|
||||
box-shadow: 0 0 0 1px var(--couleur-noir); /* 2 */
|
||||
|
|
@ -562,6 +565,16 @@ ul.avec-puce-cercle a {
|
|||
font-weight: 500;
|
||||
letter-spacing: -0.5px;
|
||||
}
|
||||
.grille-produits__aucun-produit {
|
||||
grid-column: span 3;
|
||||
align-content: center;
|
||||
min-height: calc(100vh - var(--menu-categories-produits-hauteur) - var(--en-tete-hauteur) - 105px);
|
||||
text-align: center;
|
||||
}
|
||||
.grille-produits__aucun-produit p + p {
|
||||
margin-top: var(--espace-l);
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
/**
|
||||
* Boîte flottante avec les informations Produit, le sélecteur de variation et de quantité pour le
|
||||
|
|
@ -662,9 +675,6 @@ ul.avec-puce-cercle a {
|
|||
.informations-produit .onglets-details-produit > ul li a:focus, .informations-produit .onglets-details-produit > ul li a:focus-visible {
|
||||
outline-color: transparent;
|
||||
}
|
||||
.informations-produit .onglets-details-produit:has(section:not([hidden])) {
|
||||
grid-template-rows: 12lh min-content;
|
||||
}
|
||||
.informations-produit .onglets-details-produit:has(section:not([hidden])) > ul li a:not([aria-selected=true]) {
|
||||
border-top-color: var(--couleur-noir);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../../src/sass/base/polices/_lato.scss","../../src/sass/base/polices/_myriad.scss","../../src/sass/abstracts/_variables.scss","../../src/sass/base/_base.scss","../../src/sass/base/_typographie.scss","../../src/sass/base/elements/_boutons.scss","../../src/sass/base/elements/_images.scss","../../src/sass/base/elements/_liens.scss","../../src/sass/base/elements/_listes.scss","../../src/sass/layouts/_en-tete.scss","../../src/sass/layouts/_menu-categories-produits.scss","../../src/sass/layouts/_colonnes-photos.scss","../../src/sass/layouts/_grille-produits.scss","../../src/sass/layouts/_informations-produit.scss","../../src/sass/layouts/_produits-similaires.scss","../../src/sass/layouts/_pied-de-page.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AChGJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AChBJ;AACE;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;;;ACnBF;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;AAIA;EACE;EACA;;;AAGF;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;ACxDF;EACE;EACA;EACA;;;AAGF;EACE;;;ACPF;AAAA;AAAA;AAGA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;;ACfJ;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;ACbF;AAAA;AAAA;AAAA;AAAA;AAKA;AACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA,YACE,kHAK4B;EAE9B;AAEA;AAMA;AAAA;AAAA;;AALA;EAEE;;AAMF;AACE;EACA;EACA;AAEA;EACA;EAEA;EACA;AAEA;AAMA;AAKA;;AAVA;EAEE;;AAIF;EACE;;AAIF;EACE;IACE;;;AAMJ;EACE;IACE;;;;AClER;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAMA;AACE;EACA;AAEA;EACA;AAEA;EACA;;AAEA;EACE;EACA,qLAEkE;;;AC5BxE;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAWA;;AATA;EACE;;AAEA;AAAA;EAEE;;AAKJ;EACE;EACA;EACA;EACA;EACA;AAUA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AARA;EACE;EACA;EACA;EACA;EACA;;AAYF;AACE;EACA;EACA;EACA;AAEA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;IACE;;;AAMR;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;;ACnGR;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAOA;EACE;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAMA;AAAA;AAAA;AAAA;AAAA;;AAJA;EACE;;AAQF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;IACE;IACA;;;AAKN;EACE;;AAGF;EACE;;;AC/ER;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EACA;AAEA;EACA;EACA;AAAA;AAAA;AAIA;EACA;EAEA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGA;EACE;;AAMF;EACE;EACA;;;AC7CR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;;AC9EV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EAEA;EAGA;EACA;EAGA;EAEA;EACA;EACA;EACA;EACA;AAuGA;AAyGA;;AA9MA;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;;AAMR;EACE;;AAEA;EACE;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;AAEA;AAMA;AAwCA;AAqBA;;AAlEA;EACE;EACA;;AAIF;EACE;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEI;IACE;IACA;;;AAKN;EAEI;IACE;IACA;;;AAOR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;IACE;;;AAKN;EACE;;AAeJ;EACE;;AAKJ;EACE;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;AAEA;;AAEE;EACE;IACE;;;;AAQZ;EACE;IACE;;EAGF;IACE;;;AC3QJ;EACE;EACA;EACA;EACA,qBACE;EAEF;EACA;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;;AC7FZ;AAAA;AAAA;AAGA;AACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA","file":"main.css"}
|
||||
{"version":3,"sourceRoot":"","sources":["../../src/sass/base/polices/_lato.scss","../../src/sass/base/polices/_myriad.scss","../../src/sass/abstracts/_variables.scss","../../src/sass/base/_base.scss","../../src/sass/base/_typographie.scss","../../src/sass/base/elements/_boutons.scss","../../src/sass/base/elements/_images.scss","../../src/sass/base/elements/_liens.scss","../../src/sass/base/elements/_listes.scss","../../src/sass/layouts/_en-tete.scss","../../src/sass/layouts/_menu-categories-produits.scss","../../src/sass/layouts/_colonnes-photos.scss","../../src/sass/layouts/_grille-produits.scss","../../src/sass/layouts/_informations-produit.scss","../../src/sass/layouts/_produits-similaires.scss","../../src/sass/layouts/_pied-de-page.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA,KACE;;AChGJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA,KACE;;AChBJ;AACE;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;;;ACnBF;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;AAGF;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;ACtDF;EACE;EACA;EACA;;;AAGF;EACE;;;ACPF;AAAA;AAAA;AAGA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;;ACfJ;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;ACbF;AAAA;AAAA;AAAA;AAAA;AAKA;AACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA,YACE,kHAK4B;EAE9B;AAEA;AAMA;AAAA;AAAA;;AALA;EAEE;;AAMF;AACE;EACA;EACA;AAEA;EACA;EAEA;EACA;AAEA;AAMA;AAKA;;AAVA;EAEE;;AAIF;EACE;;AAIF;EACE;IACE;;;AAMJ;EACE;IACE;;;;AClER;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAMA;AACE;EACA;AAEA;EACA;AAEA;EACA;;AAEA;EACE;EACA,qLAEkE;;;AC5BxE;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAWA;;AATA;EACE;;AAEA;AAAA;EAEE;;AAKJ;EACE;EACA;EACA;EACA;EACA;AAUA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AARA;EACE;EACA;EACA;EACA;EACA;;AAYF;AACE;EACA;EACA;EACA;AAEA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;IACE;;;AAMR;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;;ACvGR;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACE;EACA;EACA;AAEA;EACA;EACA;EAEA;EACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAOA;EACE;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAYA;AAAA;AAAA;AAAA;AAAA;;AATE;EACE;;AAIJ;EACE;;AAQF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;IACE;IACA;;;AAKN;EACE;;AAGF;EACE;;;ACrFR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EACA;AAEA;EACA;EACA;AAAA;AAAA;AAIA;EACA;EAEA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGA;EACE;;AAMF;EACE;EACA;;;AC7CR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAMR;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AC3FN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AACE;EAEA;EAGA;EACA;EAGA;EAEA;EACA;EACA;EACA;EACA;AAuGA;AAyGA;;AA9MA;EACE;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;;AASN;EACE;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;AAEA;AAMA;AAwCA;AAqBA;;AAlEA;EACE;EACA;;AAIF;EACE;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEI;IACE;IACA;;;AAKN;EAEI;IACE;IACA;;;AAOR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;IACE;;;AAKN;EACE;;AAeJ;EACE;;AAKJ;EACE;EACA;EACA;AAEA;;AACA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;AAEA;;AAEE;EACE;IACE;;;;AAQZ;EACE;IACE;;EAGF;IACE;;;AC3QJ;EACE;EACA;EACA;EACA,qBACE;EAEF;EACA;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEI;IACE;IACA;IACA;;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;;AC7FZ;AAAA;AAAA;AAGA;AACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA","file":"main.css"}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -38,7 +38,7 @@
|
|||
flex-flow: row nowrap;
|
||||
column-gap: var(--espace-xl);
|
||||
justify-content: space-between;
|
||||
font-size: 1var --espace-l;
|
||||
font-size: var(--espace-l);
|
||||
}
|
||||
#panneau-panier .panneau__grille-produits .detail-produit__nom-prix span {
|
||||
font-weight: 600;
|
||||
|
|
@ -223,6 +223,21 @@
|
|||
font-weight: 450;
|
||||
color: grey;
|
||||
}
|
||||
#panneau-panier .panneau__pied-de-page {
|
||||
align-content: center;
|
||||
padding: var(--espace-l) 0;
|
||||
font-size: 1.25rem;
|
||||
font-style: italic;
|
||||
color: var(--couleur-blanc);
|
||||
text-align: center;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 2px;
|
||||
background: var(--couleur-noir);
|
||||
}
|
||||
#panneau-panier .panneau__pied-de-page span {
|
||||
margin-left: var(--espace-l);
|
||||
font-style: initial;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Applique une marge supérieure égale à la hauteur de l'en-tête pour qu'elle puisse s'afficher
|
||||
|
|
@ -235,8 +250,15 @@
|
|||
--menu-section-marges-bloc-debut: var(--en-tete-hauteur); /* 1 */
|
||||
display: flex;
|
||||
flex-flow: row wrap;
|
||||
min-height: calc(100vh - var(--en-tete-hauteur) - 105px);
|
||||
margin-top: var(--menu-section-marges-bloc-debut);
|
||||
}
|
||||
#page-panier[data-contient-articles=false] .panneau {
|
||||
display: none;
|
||||
}
|
||||
#page-panier[data-contient-articles=false] .panier-vide {
|
||||
display: block;
|
||||
}
|
||||
#page-panier .panneau {
|
||||
flex-basis: 50%;
|
||||
border-top: 1px solid var(--couleur-noir);
|
||||
|
|
@ -261,5 +283,20 @@
|
|||
letter-spacing: 1px;
|
||||
background: var(--couleur-noir);
|
||||
}
|
||||
#page-panier .panier-vide {
|
||||
display: none;
|
||||
flex-basis: 100%;
|
||||
align-content: center;
|
||||
min-height: calc(100vh - var(--en-tete-hauteur) - 105px);
|
||||
text-align: center;
|
||||
}
|
||||
#page-panier .panier-vide p {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
#page-panier .panier-vide a {
|
||||
display: inline-block;
|
||||
margin-top: var(--espace-m);
|
||||
font-size: initial;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=page-panier.css.map */
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../../../src/sass/layouts/_panneau-panier.scss","../../../src/sass/pages/page-panier.scss"],"names":[],"mappings":";AAEA;EACE;;AAEA;EACE;;AAIF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;AAOA;AAAA;AAAA;AAAA;AAyBA;;AA9BA;EACE;EACA;;AAOF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAIJ;EACE;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;IACE;IACA;;;AASZ;EACE;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;AAgCA;AAAA;AAAA;;AA9BA;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAIF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAQN;EACE;EACA;;AAMN;EACE;EACA;EACA;EACA;AAEA;AAAA;AAAA;AAAA;;AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;;AC1QN;AAAA;AAAA;AAAA;AAIA;AACE;EACA;AAEA;EACA;EAEA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA","file":"page-panier.css"}
|
||||
{"version":3,"sourceRoot":"","sources":["../../../src/sass/layouts/_panneau-panier.scss","../../../src/sass/pages/page-panier.scss"],"names":[],"mappings":";AAEA;EACE;;AAEA;EACE;;AAIF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;AAOA;AAAA;AAAA;AAAA;AAyBA;;AA9BA;EACE;EACA;;AAOF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAIJ;EACE;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;IACE;IACA;;;AASZ;EACE;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;AAgCA;AAAA;AAAA;;AA9BA;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAIF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAQN;EACE;EACA;;AAMN;EACE;EACA;EACA;EACA;AAEA;AAAA;AAAA;AAAA;;AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;AAKJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AC5RN;AAAA;AAAA;AAAA;AAIA;AACE;EACA;AAEA;EACA;EAEA;EACA;EACA;EACA;;AAGE;EACE;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAON;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA","file":"page-panier.css"}
|
||||
|
|
@ -215,8 +215,8 @@
|
|||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/erreurs.ts",
|
||||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/gardes.ts",
|
||||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/reseau.ts",
|
||||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/cart.ts",
|
||||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/cart-remove-item.ts",
|
||||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/schemas/cart.ts",
|
||||
"web/app/themes/haiku-atelier-2024/src/scripts/lib/utils.ts",
|
||||
"_Either.js",
|
||||
"_exports.js",
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,2 +1,2 @@
|
|||
import{r as E}from"./chunk-RU7WR4KH.js";import{x as t}from"./chunk-7BKSRZNG.js";import{p}from"./index.js";import{R as f}from"./api2.js";import{a as l,b as R,c as C}from"./dom.js";import{a as S,b as u}from"./dom2.js";import{r as n,D as T,l as A}from"./erreurs.js";import{e as N,a as _}from"./gardes.js";import{p as I,t as P}from"./reseau.js";import{W as d}from"./cart.js";import{W as L}from"./cart-remove-item.js";import{a as v}from"./utils.js";import{M as h,E as b}from"./Either.js";import"./exports.js";import"./index2.js";import"./erreurs2.js";const m=_etats,g=t(v(l),S),O=()=>{console.debug(m),g.forEach(r=>{const s=h.fromNullable(r.getAttribute(R));u(r)(C).ifLeft(()=>t(new T(`L'entrée « ${s.orDefault("CLE_PANIER_INEXISTANTE")} » n'a pas de Bouton de suppression.`),n)).ifRight(a=>{a.addEventListener("click",()=>{const i=s.ifNothing(()=>{r.remove()}).orDefault("CLE_PANIER_INEXISTANTE");a.textContent="C= C= C= C= C=┌(;・ω・)┘",b.encase(()=>p(L,{key:i})).map(c=>{I({corps:JSON.stringify(c),nonce:m.nonce,route:f}).then(async e=>{N(e)&&A("500 Server Error"),t(await e.json(),E(o=>console.debug(o)),o=>P(o,d),E(()=>r.remove()))}).catch(e=>{_(e)?(n(e),console.error(e)):console.error("e n'est pas une Erreur ?!",e)})})})})})};document.addEventListener("DOMContentLoaded",()=>{O()});
|
||||
import{r as E}from"./chunk-RU7WR4KH.js";import{x as t}from"./chunk-7BKSRZNG.js";import{p}from"./index.js";import{R as f}from"./api2.js";import{a as l,b as R,c as C}from"./dom.js";import{a as S,b as u}from"./dom2.js";import{r as n,D as T,l as A}from"./erreurs.js";import{e as N,a as _}from"./gardes.js";import{p as I,t as P}from"./reseau.js";import{W as d}from"./cart-remove-item.js";import{W as L}from"./cart.js";import{a as v}from"./utils.js";import{M as h,E as b}from"./Either.js";import"./exports.js";import"./index2.js";import"./erreurs2.js";const m=_etats,g=t(v(l),S),O=()=>{console.debug(m),g.forEach(r=>{const s=h.fromNullable(r.getAttribute(R));u(r)(C).ifLeft(()=>t(new T(`L'entrée « ${s.orDefault("CLE_PANIER_INEXISTANTE")} » n'a pas de Bouton de suppression.`),n)).ifRight(a=>{a.addEventListener("click",()=>{const i=s.ifNothing(()=>{r.remove()}).orDefault("CLE_PANIER_INEXISTANTE");a.textContent="C= C= C= C= C=┌(;・ω・)┘",b.encase(()=>p(d,{key:i})).map(c=>{I({corps:JSON.stringify(c),nonce:m.nonce,route:f}).then(async e=>{N(e)&&A("500 Server Error"),t(await e.json(),E(o=>console.debug(o)),o=>P(o,L),E(()=>r.remove()))}).catch(e=>{_(e)?(n(e),console.error(e)):console.error("e n'est pas une Erreur ?!",e)})})})})})};document.addEventListener("DOMContentLoaded",()=>{O()});
|
||||
//# sourceMappingURL=scripts-page-panier.js.map
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -38,12 +38,6 @@ $contexte["total_panier"] = $total_panier;
|
|||
$contexte["sous_total_panier"] = $sous_total_panier;
|
||||
$contexte["produits_panier"] = $panier;
|
||||
|
||||
// echo "<br><br><br><pre>";
|
||||
// echo "<pre>" . print_r($panier) . "</pre>";
|
||||
// print_r(WC()->cart->get_cart());
|
||||
// print_r($panier);
|
||||
// echo "</pre>";
|
||||
|
||||
// Charge les scripts et styles de la page
|
||||
function charge_scripts_styles_page_panier(): void {
|
||||
wp_enqueue_style(
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ $contexte["produits_meme_collection"] = $produits_meme_collection;
|
|||
$contexte["tailles_produit"] = $valeurs_attribut_tailles;
|
||||
|
||||
// echo "<br><br><br><br><br><br><pre>";
|
||||
// print_r(carbon_get_the_post_meta("photos_colonne_droite"));
|
||||
// print_r($produit);
|
||||
// echo "</pre>";
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ declare(strict_types=1);
|
|||
namespace HaikuAtelier;
|
||||
|
||||
use Timber\Site;
|
||||
use Timber\URLHelper;
|
||||
use function Crell\fp\pipe;
|
||||
|
||||
class StarterSite extends Site {
|
||||
|
|
@ -77,6 +78,15 @@ class StarterSite extends Site {
|
|||
"shop" => $recupere_informations_page("shop"),
|
||||
];
|
||||
|
||||
// Récupère la Page courante
|
||||
$url_courante = URLHelper::get_current_url();
|
||||
$context["page_courante"] = $url_courante;
|
||||
$context["est_page_tous_produits"] = preg_match(pattern: "/(\bshop\b)/", subject: $url_courante);
|
||||
$context["est_page_boutique"] =
|
||||
preg_match(pattern: "/(\bshop\b)/", subject: $url_courante) ||
|
||||
preg_match(pattern: "/(\bproduct\b)/", subject: $url_courante) ||
|
||||
preg_match(pattern: "/(\bproduct-category\b)/", subject: $url_courante);
|
||||
|
||||
// Politique de confidentialité
|
||||
$politique_confidentialite_lien = pipe(get_privacy_policy_url(), fn($url) => esc_url($url));
|
||||
$context["lien_politique_confidentialite"] = $politique_confidentialite_lien;
|
||||
|
|
@ -88,8 +98,12 @@ class StarterSite extends Site {
|
|||
$cree_entree_menu = fn($categorie) => [
|
||||
"nom" => $categorie->name,
|
||||
"slug" => $categorie->slug,
|
||||
// Détermine si l'URL courante est celle de la Page d'Archive d'une Catégorie de Produits
|
||||
"courante" => preg_match(
|
||||
pattern: "/(\b$categorie->slug\b)/",
|
||||
subject: pipe(URLHelper::get_current_url(), fn($url) => URLHelper::get_rel_url($url)),
|
||||
),
|
||||
];
|
||||
// $entrees_menu_categories = array_map($callback = $cree_entree_menu, $array = $categories_produits);
|
||||
$entrees_menu_categories = pipe(
|
||||
get_categories([
|
||||
"hide_empty" => false,
|
||||
|
|
|
|||
|
|
@ -2,9 +2,10 @@
|
|||
/**
|
||||
* Fonctions pour le traitement d'informations.
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use function Crell\fp\pipe;
|
||||
|
||||
/* Page Shop */
|
||||
|
||||
/**
|
||||
|
|
@ -51,6 +52,12 @@ function recupere_informations_produit_page_produit($donnees_produit): mixed {
|
|||
return [
|
||||
/* Attributs du Produit */
|
||||
"attributs" => wc_get_product()->get_attributes(),
|
||||
/* Catégorie du Produit */
|
||||
"categorie" => pipe(
|
||||
$donnees_produit->get_id(),
|
||||
fn($id) => wc_get_product_category_list($id),
|
||||
fn($categorie) => strtolower($categorie),
|
||||
),
|
||||
/* Slug de la Collection */
|
||||
"collection" => get_the_terms($donnees_produit->get_id(), "collection")[0]->slug,
|
||||
/* Détails (Description) du Produit */
|
||||
|
|
|
|||
|
|
@ -33,10 +33,8 @@ html {
|
|||
|
||||
/**
|
||||
* 1. Utilise une couleur d'arrière-plan définie.
|
||||
* 2. Force une hauteur minimale de page occupant l'intégralité de la vue du navigateur.
|
||||
*/
|
||||
body {
|
||||
min-height: 100vh; /* 2 */
|
||||
background: var(--couleur-gris); /* 1 */
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// Styles typographiques de base
|
||||
|
||||
body {
|
||||
font: 1rem/1.4 Myriad;
|
||||
font: 1rem/1.4 Lato;
|
||||
color: var(--couleur-noir);
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,6 +72,10 @@
|
|||
text-align: center; /* 4 */
|
||||
}
|
||||
|
||||
&--courante {
|
||||
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud.svg") center/auto 90% no-repeat;
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
&:hover {
|
||||
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud.svg") center/auto 90% no-repeat;
|
||||
|
|
|
|||
|
|
@ -17,7 +17,6 @@
|
|||
grid-auto-rows: 1fr;
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr)); /* 1 */
|
||||
gap: 1px; /* 2 */
|
||||
margin-bottom: 2rem;
|
||||
|
||||
article {
|
||||
box-shadow: 0 0 0 1px var(--couleur-noir); /* 2 */
|
||||
|
|
@ -83,4 +82,16 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
&__aucun-produit {
|
||||
grid-column: span 3;
|
||||
align-content: center;
|
||||
min-height: calc(100vh - var(--menu-categories-produits-hauteur) - var(--en-tete-hauteur) - 105px);
|
||||
text-align: center;
|
||||
|
||||
p + p {
|
||||
margin-top: var(--espace-l);
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -118,7 +118,7 @@
|
|||
}
|
||||
|
||||
&:has(section:not([hidden])) {
|
||||
grid-template-rows: 12lh min-content;
|
||||
// grid-template-rows: 12lh min-content;
|
||||
|
||||
> ul li a:not([aria-selected="true"]) {
|
||||
border-top-color: var(--couleur-noir);
|
||||
|
|
|
|||
|
|
@ -43,6 +43,12 @@
|
|||
letter-spacing: 1px;
|
||||
background: var(--couleur-noir);
|
||||
|
||||
&.categorie-courante {
|
||||
a {
|
||||
color: var(--couleur-jaune);
|
||||
}
|
||||
}
|
||||
|
||||
&:active a {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@
|
|||
flex-flow: row nowrap;
|
||||
column-gap: var(--espace-xl);
|
||||
justify-content: space-between;
|
||||
font-size: 1var (--espace-l);
|
||||
font-size: var(--espace-l);
|
||||
|
||||
span {
|
||||
font-weight: 600;
|
||||
|
|
@ -271,4 +271,22 @@
|
|||
color: grey;
|
||||
}
|
||||
}
|
||||
|
||||
// Total de la commande
|
||||
.panneau__pied-de-page {
|
||||
align-content: center;
|
||||
padding: var(--espace-l) 0;
|
||||
font-size: 1.25rem;
|
||||
font-style: italic;
|
||||
color: var(--couleur-blanc);
|
||||
text-align: center;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 2px;
|
||||
background: var(--couleur-noir);
|
||||
|
||||
span {
|
||||
margin-left: var(--espace-l);
|
||||
font-style: initial;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,8 +15,19 @@
|
|||
|
||||
display: flex;
|
||||
flex-flow: row wrap;
|
||||
min-height: calc(100vh - var(--en-tete-hauteur) - 105px);
|
||||
margin-top: var(--menu-section-marges-bloc-debut);
|
||||
|
||||
&[data-contient-articles="false"] {
|
||||
.panneau {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.panier-vide {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.panneau {
|
||||
flex-basis: 50%;
|
||||
border-top: 1px solid var(--couleur-noir);
|
||||
|
|
@ -46,4 +57,22 @@
|
|||
|
||||
&:first-of-type {}
|
||||
}
|
||||
|
||||
.panier-vide {
|
||||
display: none;
|
||||
flex-basis: 100%;
|
||||
align-content: center;
|
||||
min-height: calc(100vh - var(--en-tete-hauteur) - 105px);
|
||||
text-align: center;
|
||||
|
||||
p {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
a {
|
||||
display: inline-block;
|
||||
margin-top: var(--espace-m);
|
||||
font-size: initial;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,8 +14,8 @@ import { recupereElementAvecSelecteur, recupereElementsOuLeve } from "./lib/dom.
|
|||
import { DOMElementAbsentError, leveServerError, reporteErreur } from "./lib/erreurs.ts";
|
||||
import { estError, estReponse500 } from "./lib/gardes.ts";
|
||||
import { postBackendWC, traiteReponseBackendWCSelonCodesHTTP } from "./lib/reseau.ts";
|
||||
import { WCStoreCartSchema } from "./lib/schemas/cart.ts";
|
||||
import { WCStoreCartRemoveItemArgsSchema } from "./lib/schemas/cart-remove-item.ts";
|
||||
import { WCStoreCartSchema } from "./lib/schemas/cart.ts";
|
||||
import { recupereElementsDocumentEither } from "./lib/utils.ts";
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ import {
|
|||
SELECTEUR_BOUTON_PANIER,
|
||||
SELECTEUR_LIENS_ONGLETS,
|
||||
SELECTEUR_SECTIONS_CONTENUS,
|
||||
SELECTEUR_SELECTEUR_QUANTITE
|
||||
SELECTEUR_SELECTEUR_QUANTITE,
|
||||
} from "./constantes/dom";
|
||||
import { recupereElementOuLeve, recupereElementsOuLeve } from "./lib/dom.ts";
|
||||
import {
|
||||
|
|
|
|||
|
|
@ -17,14 +17,13 @@
|
|||
{% endblock head %}
|
||||
|
||||
{% block contenu %}
|
||||
<main id="page-panier">
|
||||
<main id="page-panier" data-contient-articles="{{ articles_presents }}">
|
||||
{# TODO: Prévoir le cas où il n'y a pas de Produits dans le Panier #}
|
||||
<section class="panneau" id="panneau-panier">
|
||||
<header class="panneau__en-tete">
|
||||
<h2>Your cart</h2>
|
||||
</header>
|
||||
|
||||
{# TODO: Prévoir le cas où il n'y a pas de Produits dans le Panier #}
|
||||
|
||||
<div class="panneau__grille-produits">
|
||||
{% for produit in produits_panier %}
|
||||
<article class="panneau__grille-produits__produit" data-cle-panier="{{ produit.cle }}">
|
||||
|
|
@ -136,5 +135,10 @@
|
|||
<h2>Your info</h2>
|
||||
</header>
|
||||
</section>
|
||||
|
||||
<div class="panier-vide">
|
||||
<p>Sorry! Your cart is empty.</p>
|
||||
<a class="lien-bouton" href="{{ pages.shop.lien }}">Go back to the Shop</a>
|
||||
</div>
|
||||
</main>
|
||||
{% endblock contenu %}
|
||||
|
|
|
|||
|
|
@ -12,19 +12,36 @@
|
|||
</figure>
|
||||
</section>
|
||||
|
||||
{# TODO: Utiliser un Menu WordPress #}
|
||||
<nav class="menu-navigation" id="menu-navigation-en-tete">
|
||||
<ul>
|
||||
<span class="menu-navigation__entree">
|
||||
<li><a class="lien-menu" href="{{ pages.home.lien }}">{{ pages.home.nom }}</a></li>
|
||||
<span
|
||||
class="{{ page_courante == pages.home.lien ? 'menu-navigation__entree menu-navigation__entree--courante' : "menu-navigation__entree" }}"
|
||||
>
|
||||
<li>
|
||||
<a class="lien-menu" href="{{ pages.home.lien }}">{{ pages.home.nom }}</a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="menu-navigation__entree">
|
||||
<li><a class="lien-menu" href="{{ pages.about.lien }}">{{ pages.about.nom }}</a></li>
|
||||
<span
|
||||
class="{{ page_courante == pages.about.lien ? 'menu-navigation__entree menu-navigation__entree--courante' : "menu-navigation__entree" }}"
|
||||
>
|
||||
<li>
|
||||
<a class="lien-menu" href="{{ pages.about.lien }}">{{ pages.about.nom }}</a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="menu-navigation__entree">
|
||||
<li><a class="lien-menu" href="{{ pages.shop.lien }}">{{ pages.shop.nom }}</a></li>
|
||||
<span
|
||||
class="{{ est_page_boutique ? 'menu-navigation__entree menu-navigation__entree--courante' : "menu-navigation__entree" }}"
|
||||
>
|
||||
<li>
|
||||
<a class="lien-menu" href="{{ pages.shop.lien }}">{{ pages.shop.nom }}</a>
|
||||
</li>
|
||||
</span>
|
||||
<span class="menu-navigation__entree">
|
||||
<li><a class="lien-menu" href="{{ pages.contact.lien }}">{{ pages.contact.nom }}</a></li>
|
||||
<span
|
||||
class="{{ page_courante == pages.contact.lien ? 'menu-navigation__entree menu-navigation__entree--courante' : "menu-navigation__entree" }}"
|
||||
>
|
||||
<li>
|
||||
<a class="lien-menu" href="{{ pages.contact.lien }}">{{ pages.contact.nom }}</a>
|
||||
</li>
|
||||
</span>
|
||||
</ul>
|
||||
</nav>
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
<nav id="menu-categories-produits" class="menu-categories-produits">
|
||||
<ul>
|
||||
<li><a href="{{ pages.shop.lien }}">All</a></li>
|
||||
<li {{ est_page_tous_produits ? "class='categorie-courante'" : '' }}><a href="{{ pages.shop.lien }}">All</a></li>
|
||||
{% for categorie in categories_produits %}
|
||||
<li id="categorie-{{ categorie.slug|e }}">
|
||||
{# TODO: Factoriser l'injection de classe d'une manière plus propre #}
|
||||
<li {{ categorie.courante ? "class='categorie-courante'" : '' }} id="categorie-{{ categorie.slug|e }}">
|
||||
<a href="/{{ base_categorie_produit }}/{{ categorie.slug|e }}">{{ categorie.nom|e }}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,33 @@
|
|||
<div class="grille-produits">
|
||||
{% for produit in produits %}
|
||||
{# TODO: Trouver une meilleure arborescence et des noms de classe #}
|
||||
<article class="produit">
|
||||
<figure>
|
||||
<a href="{{ produit.url }}">
|
||||
<picture class="produit__illustration produit__illustration__principale">
|
||||
{{ produit.photo_repos }}
|
||||
</picture>
|
||||
{% if produits|length > 0 %}
|
||||
{% for produit in produits %}
|
||||
{# TODO: Trouver une meilleure arborescence et des noms de classe #}
|
||||
<article class="produit">
|
||||
<figure>
|
||||
<a href="{{ produit.url }}">
|
||||
<picture class="produit__illustration produit__illustration__principale">
|
||||
{{ produit.photo_repos }}
|
||||
</picture>
|
||||
|
||||
<picture class="produit__illustration produit__illustration__survol">
|
||||
{{ produit.photo_survol }}
|
||||
</picture>
|
||||
</a>
|
||||
<picture class="produit__illustration produit__illustration__survol">
|
||||
{{ produit.photo_survol }}
|
||||
</picture>
|
||||
</a>
|
||||
|
||||
<figcaption class="produit__textuel">
|
||||
<h3 class="produit__textuel__titre">
|
||||
<a href="{{ produit.url }}">{{ produit.nom }}</a>
|
||||
</h3>
|
||||
<p class="produit__textuel__prix">
|
||||
{{ produit.prix }}€
|
||||
</p>
|
||||
</figcaption>
|
||||
</figure>
|
||||
</article>
|
||||
{% endfor %}
|
||||
<figcaption class="produit__textuel">
|
||||
<h3 class="produit__textuel__titre">
|
||||
<a href="{{ produit.url }}">{{ produit.nom }}</a>
|
||||
</h3>
|
||||
<p class="produit__textuel__prix">
|
||||
{{ produit.prix }}€
|
||||
</p>
|
||||
</figcaption>
|
||||
</figure>
|
||||
</article>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<div class="grille-produits__aucun-produit">
|
||||
<p>Sorry! No products available for this category.</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue