16 Commits

15 changed files with 181 additions and 418 deletions

View File

@@ -42,7 +42,7 @@ content:
target_blank: false
link_trim_only: false
class: more-link
text: 'Voir le site'
text: 'Go to site'
aria_label: 'Read more about [node:title]'
summary_handler: full
trim_options:

View File

@@ -14,7 +14,7 @@ bundle: projet
label: 'Photo équipe'
description: ''
required: false
translatable: false
translatable: true
default_value: { }
default_value_callback: ''
settings:

View File

@@ -14,7 +14,7 @@ bundle: projet
label: image
description: ''
required: false
translatable: false
translatable: true
default_value: { }
default_value_callback: ''
settings:

View File

@@ -14,7 +14,7 @@ bundle: site
label: Vignette
description: ''
required: false
translatable: false
translatable: true
default_value: { }
default_value_callback: ''
settings:

View File

@@ -13,7 +13,7 @@ type: image
settings:
target_type: file
display_field: false
display_default: false
display_default: true
uri_scheme: public
default_image:
uuid: ''

View File

@@ -0,0 +1,4 @@
display:
default:
display_options:
title: 'On the same project site'

View File

@@ -409,6 +409,48 @@ display:
plugin_id: bundle
value:
projet: projet
langcode:
id: langcode
table: node_field_data
field: langcode
relationship: none
group_type: group
admin_label: ''
entity_type: node
entity_field: langcode
plugin_id: language
operator: in
value:
'***LANGUAGE_language_interface***': '***LANGUAGE_language_interface***'
group: 1
exposed: false
expose:
operator_id: ''
label: ''
description: ''
use_operator: false
operator: ''
operator_limit_selection: false
operator_list: { }
identifier: ''
required: false
remember: false
multiple: false
remember_roles:
authenticated: authenticated
reduce: false
is_grouped: false
group_info:
label: ''
description: ''
identifier: ''
optional: true
widget: select
multiple: false
remember: false
default_group: All
default_group_multiple: { }
group_items: { }
style:
type: default
row:

View File

@@ -496,10 +496,19 @@ document.addEventListener('DOMContentLoaded', function () {
const photo = document.querySelector('.field_field_equipe_photo');
const pres = document.querySelector('.field_field_equipe_presentation');
const isEnglish = window.location.pathname.startsWith('/en/');
const openText = isEnglish
? "LEARN MORE ABOUT THE TEAM"
: "EN SAVOIR PLUS SUR L'ÉQUIPE";
const closeText = isEnglish
? "CLOSE THE TEAM PRESENTATION"
: "FERMER LA PRÉSENTATION DE L'ÉQUIPE";
if (!photo || !pres) return;
// 🔒 Forcer l'état FERMÉ au chargement
// Forcer l'état FERMÉ au chargement
photo.classList.remove('is-open');
pres.classList.remove('is-open');
@@ -519,7 +528,8 @@ document.addEventListener('DOMContentLoaded', function () {
// 3. Création du bouton
const btn = document.createElement('button');
btn.className = 'btn-equipe-toggle';
btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.textContent = openText;
// btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.setAttribute('aria-expanded', 'false');
// Insertion du bouton juste après le panel (et plus après "pres")
@@ -540,7 +550,8 @@ document.addEventListener('DOMContentLoaded', function () {
const fullHeight = panel.scrollHeight; // inclut photo + texte
panel.style.maxHeight = fullHeight + 'px';
btn.textContent = "FERMER LA PRÉSENTATION DE L'ÉQUIPE";
btn.textContent = closeText;
// btn.textContent = "FERMER LA PRÉSENTATION DE L'ÉQUIPE";
btn.setAttribute('aria-expanded', 'true');
}
@@ -555,7 +566,8 @@ document.addEventListener('DOMContentLoaded', function () {
pres.classList.remove('is-open');
});
btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.textContent = openText;
// btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.setAttribute('aria-expanded', 'false');
}

File diff suppressed because one or more lines are too long

View File

@@ -192,7 +192,7 @@ h2, h3 {
width: 100%;
padding-top: 200px;
padding-bottom: 3rem;
min-height: calc(100vh - (200px + 3rem));
min-height: calc(100vh - (200px + 6rem));
}
@media (max-width: 810px) {
.layout-container main {
@@ -383,13 +383,18 @@ header[role=banner] .header_left_container #block-quartiers-de-demain-logoquarti
header[role=banner] .header_left_container img {
width: auto;
margin: auto;
height: calc(200px - 3rem);
height: calc(200px - 4rem);
padding: 2rem;
transition: height 0.3s;
}
@media (max-width: 891px) {
@media (min-width: 1600px) {
header[role=banner] .header_left_container img {
height: 160px;
height: calc(200px - 3rem);
}
}
@media (max-width: 1300px) {
header[role=banner] .header_left_container img {
height: calc(160px - 4rem);
}
}
@media (max-width: 660px) {
@@ -397,13 +402,7 @@ header[role=banner] .header_left_container img {
height: 70px;
}
}
@media (max-width: 450px) {
header[role=banner] .header_left_container img {
height: 50px;
}
}
header[role=banner] .header_right_container {
display: none;
flex: 0 0 0%;
width: fit-content;
min-width: fit-content;
@@ -2518,18 +2517,6 @@ body {
font-size: 0.8rem;
font-weight: 800;
}
#home article.node-type-static #paragraph-id--6 .field_field_texte .colone-picto > p:nth-of-type(2) {
width: 60%;
font-size: 0.8rem;
align-self: center;
padding-top: 1.5rem;
}
@media (max-width: 810px) {
#home article.node-type-static #paragraph-id--6 .field_field_texte .colone-picto > p:nth-of-type(2) {
width: 80%;
padding-top: 0;
}
}
#home article.node-type-static #paragraph-id--6 .field_field_texte .colone-picto > p:nth-of-type(3) {
width: 90%;
align-self: center;
@@ -3740,7 +3727,7 @@ body {
.node-type-site .layout--threecol-25-50-25 .layout__region--second .block-region-second div:has(.field_field_parties) {
margin-top: 2rem;
width: 100%;
order: 6;
order: 7;
}
@media (max-width: 500px) {
.node-type-site .layout--threecol-25-50-25 .layout__region--second .block-region-second div:has(.field_field_parties) {
@@ -3835,6 +3822,32 @@ body {
padding-left: 0.2rem;
height: 25px;
}
.node-type-site .layout--threecol-25-50-25 .layout__region--second .block-region-second div:has(.field_field_liens_site) {
order: 6;
margin-top: 0.5rem;
width: 100%;
}
.node-type-site .layout--threecol-25-50-25 .layout__region--second .block-region-second div:has(.field_field_liens_site) .field_field_liens_site a {
display: inline-flex;
align-items: center;
color: white;
background: black;
padding-left: 0.5rem;
text-transform: uppercase;
font-size: 0.5rem;
margin-bottom: 0.3rem;
width: fit-content;
}
.node-type-site .layout--threecol-25-50-25 .layout__region--second .block-region-second div:has(.field_field_liens_site) .field_field_liens_site a svg {
display: none;
}
.node-type-site .layout--threecol-25-50-25 .layout__region--second .block-region-second div:has(.field_field_liens_site) .field_field_liens_site a::after {
display: inline-flex;
content: url("../img/noun-arrow-to-right.svg");
padding-right: 0.2rem;
padding-left: 0.2rem;
height: 25px;
}
.node-type-site .layout--threecol-25-50-25 .layout__region--third {
flex: 0 1 25% !important;
height: fit-content;
@@ -4431,6 +4444,12 @@ body {
width: 220px;
height: 145px;
}
@media (max-width: 1500px) {
.node-type-projet .layout--threecol-25-50-25 .layout__region--second .block-region-second .field_field_parties_projet .paragraph--type--projet-diapo .field_field_images_projet .diaporama .cadre-img-zoom img {
width: 150px;
height: auto;
}
}
@media (max-width: 810px) {
.node-type-projet .layout--threecol-25-50-25 .layout__region--second .block-region-second .field_field_parties_projet .paragraph--type--projet-diapo .field_field_images_projet .diaporama .cadre-img-zoom img {
width: 100%;
@@ -4439,7 +4458,7 @@ body {
}
.node-type-projet .layout--threecol-25-50-25 .layout__region--second .block-region-second .field_field_parties_projet .paragraph--type--projet-diapo .field_field_images_projet .diaporama .image-field-caption {
margin: 0;
max-width: 200px;
max-width: 220px;
}
.node-type-projet .layout--threecol-25-50-25 .layout__region--second .block-region-second .field_field_parties_projet .paragraph--type--projet-diapo .field_field_images_projet .diaporama .image-field-caption p {
margin-top: 0;

View File

@@ -438,10 +438,19 @@ document.addEventListener('DOMContentLoaded', function () {
const photo = document.querySelector('.field_field_equipe_photo');
const pres = document.querySelector('.field_field_equipe_presentation');
const isEnglish = window.location.pathname.startsWith('/en/');
const openText = isEnglish
? "LEARN MORE ABOUT THE TEAM"
: "EN SAVOIR PLUS SUR L'ÉQUIPE";
const closeText = isEnglish
? "CLOSE THE TEAM PRESENTATION"
: "FERMER LA PRÉSENTATION DE L'ÉQUIPE";
if (!photo || !pres) return;
// 🔒 Forcer l'état FERMÉ au chargement
// Forcer l'état FERMÉ au chargement
photo.classList.remove('is-open');
pres.classList.remove('is-open');
@@ -461,7 +470,8 @@ document.addEventListener('DOMContentLoaded', function () {
// 3. Création du bouton
const btn = document.createElement('button');
btn.className = 'btn-equipe-toggle';
btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.textContent = openText;
// btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.setAttribute('aria-expanded', 'false');
// Insertion du bouton juste après le panel (et plus après "pres")
@@ -482,7 +492,8 @@ document.addEventListener('DOMContentLoaded', function () {
const fullHeight = panel.scrollHeight; // inclut photo + texte
panel.style.maxHeight = fullHeight + 'px';
btn.textContent = "FERMER LA PRÉSENTATION DE L'ÉQUIPE";
btn.textContent = closeText;
// btn.textContent = "FERMER LA PRÉSENTATION DE L'ÉQUIPE";
btn.setAttribute('aria-expanded', 'true');
}
@@ -497,7 +508,8 @@ document.addEventListener('DOMContentLoaded', function () {
pres.classList.remove('is-open');
});
btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.textContent = openText;
// btn.textContent = "EN SAVOIR PLUS SUR L'ÉQUIPE";
btn.setAttribute('aria-expanded', 'false');
}

View File

@@ -38,7 +38,7 @@ $width-menu-slidedown : 550px;
padding-top: $header-height;
padding-bottom: 3rem;
// box-sizing:border-box;
min-height: calc(100vh - ($header-height + 3rem));
min-height: calc(100vh - ($header-height + 6rem));
@media(max-width: 810px){
padding-top: 180px;
}

View File

@@ -335,6 +335,10 @@
object-fit: cover;
width: 220px;
height: 145px;
@media (max-width:1500px){
width: 150px;
height: auto;
}
@media (max-width:810px){
width: 100%;
height: auto;
@@ -343,7 +347,7 @@
}
.image-field-caption{
margin: 0;
max-width: 200px;
max-width: 220px;
p{
margin-top: 0;
font-size: 0.5rem;
@@ -351,7 +355,7 @@
@media(max-width: 810px){
font-size:0.8rem;
}
}
}
}
}

View File

@@ -269,7 +269,7 @@
div:has(.field_field_parties){
margin-top: 2rem;
width: 100%;
order:6;
order:7;
@media(max-width: 500px){
width: 100%;
}
@@ -378,8 +378,37 @@
}
}
}
div:has(.field_field_liens){
div:has(.field_field_liens_site){
order: 6;
margin-top: 0.5rem;
width: 100%;
.field_field_liens_site{
a{
display: inline-flex;
align-items: center;
color: white;
background: black;
padding-left: 0.5rem;
text-transform: uppercase;
font-size: 0.5rem;
margin-bottom: 0.3rem;
width: fit-content;
svg{
display: none;
}
&::after{
display: inline-flex;
content: url("../img/noun-arrow-to-right.svg");
padding-right: 0.2rem;
padding-left: 0.2rem;
height: 25px;
// padding-bottom: 0.2rem;
}
}
}
}
}
}

View File

@@ -1,358 +1,3 @@
// /* ===========================
// HEADER GLOBAL
// =========================== */
// header[role="banner"] {
// position: fixed;
// top: 0;
// left: 0;
// z-index: 99;
// max-width: 100vw;
// display: flex;
// flex-direction: row;
// transform-origin: bottom right;
// height: $header-height;
// width: 35%;
// transition: all 1.4s ease-in-out;
// @media (max-width: 1090px) {
// height: $header-height-pad;
// }
// @media (min-width: 1400px) {
// height: $header-height-big;
// }
// @media (max-width: 810px) {
// width: 100%;
// height: 170px;
// flex-direction: row;
// }
// .qdd-header {
// opacity: 1 !important;
// }
// /* ===========================
// LANGUAGE SWITCHER
// =========================== */
// .language-switcher-language-url {
// text-transform: uppercase;
// color: white;
// ul {
// display: flex;
// flex-direction: row;
// font-size: 0.6rem;
// padding: 0;
// width: fit-content;
// @media (max-width: 810px) {
// font-size: 0.9rem;
// }
// li a {
// color: white;
// font-family: "gilroy-light";
// }
// li:nth-child(1) {
// &::after {
// content: " / ";
// white-space: pre;
// }
// }
// .is-active {
// font-family: "gilroy-bold";
// }
// }
// }
// .contextual-region {
// width: max-content;
// }
// /* ===========================
// COLONNE GAUCHE (LOGO)
// =========================== */
// .header_left_container {
// flex: 0 0 45%;
// display: flex;
// flex-direction: row;
// background-color: $white-header;
// transition:
// flex-basis 0.9s ease-in-out,
// width 0.9s ease-in-out;
// img {
// display: none;
// }
// @media (max-width: 660px) {
// height: inherit;
// }
// #block-quartiers-de-demain-logorepu-2 {
// display: none;
// @media (max-width: 891px) {
// height: $header-height-pad;
// }
// }
// #block-quartiers-de-demain-logoepau-2 {
// display: none;
// height: $header-height;
// @media (max-width: 891px) {
// height: $header-height-pad;
// }
// }
// #block-quartiers-de-demain-logoquartiersdedemain {
// margin: auto;
// .field_field_logo {
// width: 90%;
// margin: auto;
// @media (max-width: 1650px) {
// width: 80%;
// }
// .qdd-header {
// width: 100%;
// }
// }
// }
// img {
// width: auto;
// margin: auto;
// height: calc($header-height - 1rem);
// padding: 2rem;
// transition: height 0.3s;
// @media (max-width: 891px) {
// height: $header-height-pad;
// }
// @media (max-width: 660px) {
// height: $header-height-small;
// }
// @media (max-width: 450px) {
// height: $header-height-ultrasmall;
// }
// }
// }
// /* ===========================
// BOUTON / BLOCS DROITE (SI BESOIN)
// =========================== */
// .header_right_container {
// display: none;
// flex: 0 0 0%;
// width: fit-content;
// min-width: fit-content;
// background: $blue_QDD;
// text-align: center;
// transform: translateX(0);
// transition: transform 0.3s ease-in-out;
// z-index: 10;
// position: fixed;
// right: 0;
// border-radius: 11px;
// padding: 0.5rem 0.5rem 0 0.5rem;
// margin: 1rem;
// @media (max-width: 660px) {
// padding-right: 0;
// }
// }
// /* ===========================
// NAVIGATION (COLONNE DROITE)
// =========================== */
// .header_nav_container {
// flex: 0 0 0%;
// width: 100%;
// min-width: fit-content;
// background: $blue_QDD;
// text-align: center;
// display: flex;
// flex-direction: column;
// z-index: -1;
// transform: translateX(0);
// transition:
// flex-basis 0.9s ease-in-out,
// width 0.9s ease-in-out,
// transform 0.3s ease-in-out;
// @media (max-width: 810px) {
// height: 200px;
// top: -30px;
// flex: 1 0 100%;
// position: relative;
// }
// @media (max-width: 500px) {
// flex: 0 0 40%;
// }
// /* ---- Bloc menu principal ---- */
// #block-quartiers-de-demain-entete {
// margin: auto;
// h2 {
// display: none;
// }
// ul {
// display: flex;
// flex-direction: column;
// align-items: flex-start;
// position: relative;
// padding-left: 1rem;
// padding-right: 1rem;
// margin: auto;
// @media (max-width: 1025px) {
// top: 0;
// align-items: center;
// padding-top: 0.3rem;
// }
// li {
// width: 100%;
// text-align: left;
// .is-active {
// font-family: "gilroy-bold";
// }
// :hover {
// font-family: "gilroy-bold";
// }
// @media (max-width: 1090px) {
// padding-top: 0.3rem;
// }
// @media (max-width: 810px) {
// line-height: 1.3rem;
// }
// a {
// text-transform: uppercase;
// color: white;
// font-size: 0.5rem;
// @media (max-width: 1090px) {
// font-size: 0.6rem;
// }
// @media (max-width: 810px) {
// display: flex;
// flex-direction: column;
// align-items: center;
// font-size: 0.8rem;
// }
// }
// }
// }
// }
// /* ---- Sélecteur de langue en bas du menu ---- */
// #block-quartiers-de-demain-selecteurdelangue {
// width: fit-content;
// margin: auto;
// @media (max-width: 810px) {
// padding-bottom: 0.5rem;
// margin-bottom: 0.5rem;
// .links {
// margin-top: 0.5rem;
// }
// }
// }
// }
// /* ===========================
// ÉTATS DAFFICHAGE DU MENU
// (pilotés en JS avec .nav-hidden)
// =========================== */
// /* État par défaut : menu visible */
// .header_nav_container {
// transform: translateX(0);
// }
// /* Menu caché : desktop → slide vers la gauche */
// .header_nav_container.nav-hidden {
// transform: translateX(-100%);
// }
// /* Spécifique mobile : on slide verticalement */
// @media (max-width: 810px) {
// .header_nav_container {
// transform: translateY(0);
// }
// .header_nav_container.nav-hidden {
// transform: translateY(-100%);
// }
// }
// }
// /* ===========================
// HEADER "SHRINK" AU SCROLL
// =========================== */
// .shrink {
// height: 260px;
// @media (max-width: 810px) {
// height: 170px;
// }
// }
// /* ===========================
// RÉGLAGES DE LA RÉPARTITION GAUCHE / DROITE
// (quand le header est à son état "final")
// =========================== */
// header[role="banner"] {
// .header_left_container {
// flex-basis: 65%;
// transform-origin: bottom right;
// @media (max-width: 810px) {
// flex: 1 0 100%;
// }
// }
// .header_nav_container {
// flex-basis: 30%;
// transform-origin: bottom right;
// min-width: fit-content;
// @media (max-width: 810px) {
// flex: 1 0 100%;
// position: relative;
// }
// }
// }
/* ===========================
@@ -475,37 +120,33 @@
#block-quartiers-de-demain-logoquartiersdedemain {
margin: auto;
.field_field_logo {
// width: 100%;
// margin: auto;
// @media (max-width: 1650px) {
// width: 80%;
// }
// .qdd-header {
// width: 100%;
// }
}
}
img {
width: auto;
margin: auto;
height: calc($header-height - 3rem);
height: calc($header-height - 4rem);
padding: 2rem;
transition: height 0.3s;
@media (max-width: 891px) {
height: $header-height-pad;
@media (max-width: 1700px) {
// height: calc($header-height - 6rem);
}
@media (min-width: 1600px) {
height: calc($header-height - 3rem);
}
@media (max-width: 1300px) {
height: calc($header-height-pad - 4rem);
// height: $header-height-pad;
}
@media (max-width: 660px) {
// height: calc($header-height-small - 6rem);
height: $header-height-small;
}
@media (max-width: 450px) {
height: $header-height-ultrasmall;
// height: calc($header-height-ultrasmall - 3rem);
// height: $header-height-ultrasmall;
}
}
}
@@ -515,7 +156,7 @@
=========================== */
.header_right_container {
display: none;
// display: none;
flex: 0 0 0%;
width: fit-content;
min-width: fit-content;