diff --git a/data.json b/data.json index a6bcd48..76cb922 100644 --- a/data.json +++ b/data.json @@ -1012,7 +1012,7 @@ "nav": [ { "name": "Rubrica contatti", - "url": "#" + "url": "/pages/contatti/strutture.html" }, { "name": "Area riservata", @@ -1020,7 +1020,7 @@ }, { "name": "Mappa del sito", - "url": "#" + "url": "/pages/sitemap.html" } ] } @@ -1033,40 +1033,45 @@ "url": "/index.html", "blocks": [ { - "key": "banner-scroll", + "key": "home-scroll-banner", "content": { + "video": { + "filename": "homepage", + "atts": "muted autoplay loop playsinline", + "path": "" + }, "title": "L’università pubblica di Venezia interamente dedicata al progetto", "images": [ { "filename": "hero-1", "path": "/blocks/hero-banner", "alt": "", - "speed": "1.5" + "speed": "0.33" }, { "filename": "hero-2", "path": "/blocks/hero-banner", "alt": "", - "speed": "1" - }, - { - "filename": "hero-4", - "path": "/blocks/hero-banner", - "alt": "", - "speed": "1" + "speed": "2" }, { "filename": "hero-3", "path": "/blocks/hero-banner", "alt": "", - "speed": "0.8" + "speed": "0.75" + }, + { + "filename": "hero-4", + "path": "/blocks/hero-banner", + "alt": "", + "speed": "2" } ] } }, { "key": "links-list", - "classes": "mt-40", + "classes": "block-links-list--2cols", "content": { "list": [ { @@ -1074,177 +1079,228 @@ "url": "#" }, { - "name": "Cosa si studia", - "url": "#" - }, - { "name": "Laboratori in mostra", "url": "#" }, { "name": "Chi siamo", "url": "#" + }, + { + "name": "Cosa si studia", + "url": "#" } ] } }, { - "key": "marquee-posts-grid", - "classes": "mt-12 mb-40", - "offset": null, - "speed": "0.006", - "content": [ + "key": "cards-grid", + "content": { + "items": [ + { + "post_type": "events", + "id": 0, + "attr": { + "show_category": true, + "category": "Eventi", + "hide_arrow": true + } + }, + { + "post_type": "notices", + "id": 0, + "attr": { + "show_category": true, + "category": "Avvisi", + "hide_arrow": true + } + }, + { + "post_type": "news", + "id": 3, + "attr": { + "show_category": true, + "category": "Notizie", + "hide_arrow": true + } + }, + { + "post_type": "notices", + "id": 1, + "attr": { + "show_category": true, + "category": "Avvisi", + "hide_arrow": true + } + }, + { + "post_type": "notices", + "id": 2, + "attr": { + "show_category": true, + "category": "Avvisi", + "hide_arrow": true + } + }, + { + + "post_type": "events", + "id": 2, + "attr": { + "show_category": true, + "category": "Eventi", + "hide_arrow": true + } + }, + { + "post_type": "notices", + "id": 3, + "attr": { + "show_category": true, + "category": "Avvisi", + "hide_arrow": true + } + }, + { + "post_type": "news", + "id": 4, + "attr": { + "show_category": true, + "category": "Notizie", + "hide_arrow": true + } + } + ] + } + }, + { + "key": "featured-content-stacked", + "classes": "", + "content": { + "title": { + "key": "title", + "tag": "h2", + "content": { + "title": "Open day 2024", + "link": { + "url": "#", + "label": "Scopri di più" + } + } + }, + "image": { + "filename": "open-day", + "path": "/post_type/eventi" + }, + "text": { + "key": "paragraph", + "classes": "", + "content": "

Partecipa all’Open Day 2024 per scoprire tutti i corsi di studio dell’Università Iuav di Venezia. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi nunc libero, fringilla id semper id, ornare pellentesque massa. Nam posuere luctus facilisis.

" + } + } + }, + { + "key": "composition/composition", + "classes": "", + "inner_blocks": [ { - "post_type": "events", - "items": [0] + "key": "title", + "classes": "block-title--sm block-title--divider", + "tag": "h2", + "content": { + "title": "Ultime news", + "link": { + "url": "/pages/news.html", + "label": "Vedi tutte" + } + } }, { - "post_type": "news", - "items": [0,1] - }, - { - "post_type": "events", - "items": [1] - }, - { - "post_type": "notices", - "items": [0] - }, - { - "post_type": "events", - "items": [2,3] - }, - { - "post_type": "notices", - "items": [1] + "key": "tease-row", + "classes": "", + "content": { + "featured": [ + { + "post_type": "news", + "items": [2,3,4,5] + } + ] + } } ] }, { - "key": "title", - "classes": "mt-24", - "tag": "h2", - "content": { - "title": "Ultime news", - "link": { - "url": "/pages/news.html", - "label": "Vedi tutte" - } - } - }, - { - "key": "tease-row", + "key": "composition/composition", "classes": "", - "content": { - "featured": [ - { - "post_type": "news", - "items": [2,3,4,5] + "inner_blocks": [ + { + "key": "title", + "tag": "h2", + "classes": "block-title--sm block-title--divider", + "content": { + "title": "Prossimi eventi", + "link": { + "url": "/pages/eventi.html", + "label": "Vedi tutti" + } } - ] - } + }, + { + "key": "events-row", + "content": { + "items": { + "id": [4,5,6] + } + } + } + ] }, { - "key": "featured-content-cover", + "key": "composition/composition", "classes": "", - "content": { - "featured": { - "post_type": "events", - "id": 3 + "inner_blocks": [ + { + "key": "title", + "classes": "", + "tag": "h2", + "content": { + "title": "L’Università Iuav di Venezia offre corsi di laurea triennale, corsi di laurea magistrale e formazione post-laurea nei campi della progettazione architettonica, della pianificazione del territorio, del design e delle arti.", + "link": null + } + }, + { + "key": "links-list", + "classes": "block-links-list--2cols", + "content": { + "list": [ + { + "name": "Architettura", + "url": "#" + }, + { + "name": "Arti visive e multimediali", + "url": "#" + }, + { + "name": "Design del prodotto, della comunicazione e degli interni", + "url": "#" + }, + { + "name": "Design della moda", + "url": "#" + }, + { + "name": "Pianificazione e urbanistica", + "url": "#" + }, + { + "name": "Teatro e arti performative", + "url": "#" + } + ] + } } - } - }, - { - "key": "title", - "classes": "mt-16", - "tag": "h2", - "content": { - "title": "Prossimi eventi", - "link": { - "url": "/pages/eventi.html", - "label": "Vedi tutti" - } - } - }, - { - "key": "events-list-row", - "content": { - "title": "25.09.2023", - "items": [ - { - "post_type": "events", - "id": [4,5] - } - ] - } - }, - { - "key": "events-list-row", - "content": { - "title": "26.09.2023", - "items": [ - { - "post_type": "events", - "id": [6] - } - ] - } - }, - { - "key": "title", - "classes": "mt-20", - "tag": "h2", - "content": { - "title": "L’Università Iuav di Venezia offre corsi di laurea triennale, corsi di laurea magistrale e formazione post-laurea nei campi della progettazione architettonica, della pianificazione del territorio, del design e delle arti.", - "link": null - } - }, - { - "key": "links-list", - "content": { - "list": [ - { - "name": "Architettura", - "url": "#" - }, - { - "name": "Arti multimediali", - "url": "#" - }, - { - "name": "Arti performative", - "url": "#" - }, - { - "name": "Arti visive", - "url": "#" - }, - { - "name": "Design degli interni", - "url": "#" - }, - { - "name": "Design del prodotto", - "url": "#" - }, - { - "name": "Design della comunicazione", - "url": "#" - }, - { - "name": "Moda", - "url": "#" - }, - { - "name": "Teatro", - "url": "#" - }, - { - "name": "Urbanistica", - "url": "#" - } - ] - } + ] }, { "key": "images-grid", @@ -1275,44 +1331,74 @@ } }, { - "key": "title", - "classes": "mt-20", - "tag": "h2", - "content": { - "title": "Link utili", - "link": null - } - }, - { - "key": "links-list", - "content": { - "list": [ - { - "name": "Sistema bibliotecario", - "url": "#" - }, - { - "name": "Archivio progetti", - "url": "#" - }, - { - "name": "Procedure", - "url": "#" - }, - { - "name": "Concorsi", - "url": "#" - }, - { - "name": "Diritto allo studio", - "url": "#" - }, - { - "name": "Tasse e contributi", - "url": "#" + "key": "composition/composition", + "classes": "", + "inner_blocks": [ + { + "key": "title", + "classes": "block-title--sm block-title--divider", + "tag": "h2", + "content": { + "title": "Pagine utili", + "link": null } - ] - } + }, + { + "key": "cards", + "cards": { + "items": [ + { + "title": "Biblioteca", + "utl": "#", + "show_excerpt": true, + "excerpt": "Iuav possiede la più grande biblioteca dedicata all’architettura e alle altre discipline progettuali: oltre 200mila volumi, 4mila riviste e 26mila tesi di laurea su architettura, pianificazione, design, arti, moda." + }, + { + "title": "Scuola di dottorato", + "utl": "#", + "show_excerpt": true, + "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." + }, + { + "title": "Servizi", + "utl": "#", + "show_excerpt": true, + "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." + }, + { + "title": "Concorsi", + "utl": "#", + "show_excerpt": true, + "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." + }, + { + "title": "Diritto allo studio", + "utl": "#", + "show_excerpt": true, + "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." + }, + { + "title": "Tasse e contributi", + "utl": "#", + "show_excerpt": true, + "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." + }, + { + "title": "Valutazione della didattica", + "utl": "#", + "show_excerpt": true, + "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." + }, + { + "title": "Archivio progetti", + "utl": "#", + "show_excerpt": true, + "excerpt": "L’Archivio progetti dell’ateneo conduce un’intensa attività di ricerca, acquisizione, ordinamento e pubblicazione di archivi di architettura." + } + ] + } + } + ] } ] }, @@ -2724,21 +2810,25 @@ { "title": "Orario", "url": "#", + "show_excerpt": true, "excerpt": "Iuav possiede la più grande biblioteca dedicata all’architettura e alle altre discipline progettuali: oltre 200mila volumi, 4mila riviste e 26mila tesi di laurea su architettura, pianificazione, design, arti, moda." }, { "title": "Diritto allo studio", "url": "#", + "show_excerpt": true, "excerpt": "Iuav dispone di laboratori che mettono a disposizione strumenti, tecnologie e competenze per le ricerche di ateneo e la committenza esterna." }, { "title": "Biblioteca", "url": "#", + "show_excerpt": true, "excerpt": "L’Archivio progetti dell’ateneo conduce un’intensa attività di ricerca, acquisizione, ordinamento e pubblicazione di archivi di architettura." }, { "title": "Tirocinio e lavoro", "url": "#", + "show_excerpt": true, "excerpt": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus nec felis sed mauris maximus dictum." } ] @@ -3161,8 +3251,11 @@ }, { "key": "cards", - "cards": { + "cards": { "post_type": "services", + "attrs": { + "show_excerpt": true + }, "id": [0,1,2,3,4,5,6,7,8] } } @@ -3185,6 +3278,9 @@ "key": "cards", "cards": { "post_type": "services", + "attrs": { + "show_excerpt": true + }, "id": [9,10,11,12] } } @@ -3219,7 +3315,7 @@ { "key": "paragraph", "classes": "block-paragraph--1col", - "content": "

Con lo Statuto emanato nel 2012, Iuav ha accolto le indicazioni della legge 240 sull’organizzazione dell’università (“legge Gelmini”) e ha sostituito le facoltà con nuove strutture organizzative: i dipartimenti, centri di svolgimento delle attività di ricerca, didattiche e formative.
Nel 2018 Iuav è entrato in vigore il nuovo Statuto grazie al quale Iuav recupera lo status di “scuola speciale” che lo definisce dalla sua fondazione e che offre la possibilità di riorganizzarsi al di fuori dei vincoli della legge Gelmini, garantendo semplificazione organizzativa e operatività gestionale.
Tra le novità più rilevanti l’attribuzione delle funzioni gestionali a un unico dipartimento, Culture del progetto.
L’Università Iuav di Venezia è oggi un luogo di insegnamento, alta formazione e ricerca nel campo della progettazione di spazi e ambienti abitati dall’uomo ed è l’unico ateneo in Italia interamente dedicato all’insegnamento e alla ricerca nel campo delle discipline progettuali: Architettura, Pianificazione e urbanistica, Design, Arti, Moda, Teatro e arti performative.
L’attuale rettore dell’ateneo è Benno Albrecht, in carica dal 1 ottobre 2021.

" + "content": "

Con lo Statuto emanato nel 2012, Iuav ha accolto le indicazioni della legge 240 sull’organizzazione dell’università (“legge Gelmini”) e ha sostituito le facoltà con nuove strutture organizzative: i dipartimenti, centri di svolgimento delle attività di ricerca, didattiche e formative.

  1. Con lo Statuto emanato nel 2012, Iuav ha accolto le indicazioni della legge 240 sull’organizzazione dell’università (“legge Gelmini”) e ha sostituito le facoltà con nuove strutture organizzative: i dipartimenti, centri di svolgimento delle attività di ricerca, didattiche e formative
  2. item
  3. item
  4. item
  5. item
  6. item
  7. item
  8. item
  9. item
  10. item

Nel 2018 Iuav è entrato in vigore il nuovo Statuto grazie al quale Iuav recupera lo status di “scuola speciale” che lo definisce dalla sua fondazione e che offre la possibilità di riorganizzarsi al di fuori dei vincoli della legge Gelmini, garantendo semplificazione organizzativa e operatività gestionale.
Tra le novità più rilevanti l’attribuzione delle funzioni gestionali a un unico dipartimento, Culture del progetto.
L’Università Iuav di Venezia è oggi un luogo di insegnamento, alta formazione e ricerca nel campo della progettazione di spazi e ambienti abitati dall’uomo ed è l’unico ateneo in Italia interamente dedicato all’insegnamento e alla ricerca nel campo delle discipline progettuali: Architettura, Pianificazione e urbanistica, Design, Arti, Moda, Teatro e arti performative.
L’attuale rettore dell’ateneo è Benno Albrecht, in carica dal 1 ottobre 2021.

" }, { "key": "links-list", @@ -3600,6 +3696,17 @@ ] } ] + }, + { + "title": "Mappa del sito", + "url": "/pages/sitemap.html", + "blocks": [ + { + "key": "breadcrumbs", + "post_type": "pages", + "parents": [] + } + ] } ], "news": { @@ -3734,10 +3841,7 @@ { "title": "Aperte fino al 10.11.2023 le iscrizioni per SSIBAP Scuola di specializzazione in beni architettonici e del paesaggio", "date": "1692079200", - "featured_image": { - "filename": "news-ssibap", - "path": "/post_type/news" - }, + "featured_image": null, "terms": [[0,0]] }, { @@ -3752,10 +3856,7 @@ { "title": "Aperte fino al 04.09.2023 le domande per 4 borse di studio “Bravi nello studio, bravi nello sport”", "date": "1688709600", - "featured_image": { - "filename": "avvisi-3", - "path": "/post_type/news" - }, + "featured_image": null, "terms": [[0,1]] }, { @@ -3838,7 +3939,10 @@ "start": "1695074400", "end": "1695160800" }, - "featured_image": null, + "featured_image": { + "filename": "open-day", + "path": "/post_type/eventi" + }, "keyword": "Internazionale", "place": "Cotonificio, Auditorium" }, @@ -3861,7 +3965,10 @@ "start": "1694383200", "end": "1694556000" }, - "featured_image": null, + "featured_image": { + "filename": "petit-tour", + "path": "/post_type/eventi" + }, "keyword": "Petit tour", "place": "Badoer, Aula D" }, @@ -4218,7 +4325,7 @@ "text": "La lunga tradizione della scuola di architettura, da Aldo Rossi a Carlo Scarpa", "video": { "filename": "iuav-architettura", - "atts": "muted autoplay loop", + "atts": "muted autoplay loop playsinline", "path": "" } }, @@ -4782,7 +4889,7 @@ "text": "Progettazione e sviluppo tra innovazione e tradizione", "video": { "filename": "iuav-design", - "atts": "muted autoplay loop", + "atts": "muted autoplay loop playsinline", "path": "" } }, @@ -4995,7 +5102,14 @@ "path": "/post_type/corsi", "alt": "corso di design, laboratori" }, - "text": "

Avrai a disposizione spazi attrezzati per sperimentare diversi strumenti e materiali e realizzare i tuoi progetti: laboratori di modellistica, informatici e multimediali, studi fotografici, fablab e centri di stampa.

" + "text": "

Avrai a disposizione spazi attrezzati per sperimentare diversi strumenti e materiali e realizzare i tuoi progetti: laboratori di modellistica, informatici e multimediali, studi fotografici, fablab e centri di stampa.

", + "inner_blocks": [ + { + "key": "paragraph", + "classes": "block-paragraph", + "content": "

Avrai a disposizione spazi attrezzati per sperimentare diversi strumenti e materiali e realizzare i tuoi progetti: laboratori di modellistica, informatici e multimediali, studi fotografici, fablab e centri di stampa.

" + } + ] }, { "name": "Eventi", @@ -6823,17 +6937,17 @@ { "key": "cards", "cards": { - "post_type": "services", - "id": null, "items": [ { "title": "Formazione professionale", "url": "#", + "show_excerpt": true, "excerpt": "Il LabSCo organizza periodicamente giornate di studio, corsi e seminari di aggiornamento e approfondimento relativi alle tematiche d’interesse." }, { "title": "Strumentazione", "url": "#", + "show_excerpt": true, "excerpt": "Vengono messe a disposizione strutture di contrasto, strutture di misura, oltre che prove distruttive, non distruttive e microdistruttive." }, { @@ -7375,6 +7489,12 @@ "name": "Curriculum", "url": "#" } + ], + "result": [ + { + "name": "Esito selezione", + "url": "#" + } ] }, { @@ -7565,7 +7685,16 @@ } ] } - } + }, + { + "key": "alert", + "content": "Il mancato rispetto di una sola delle procedure indicate determina l’esclusione dal concorso per la borsa di studio." + }, + { + "key": "paragraph", + "classes": "block-paragraph--sm block-paragraph--1col", + "content": "

Le tre azioni possono essere svolte indipendentemente tra loro e senza alcuna priorità.
Si fa presente che l’ISEE viene acquisito automaticamente dall’ateneo solo se la domanda attraverso la procedura on line su Spin Sportello Internet ha avuto esito positivo. In caso di mancata conclusione della procedura on line o di ISEE “difforme” o non rilasciato per il diritto allo studio, l’acquisizione non viene eseguita. Lo studente, in questi casi, deve contattare il servizio diritto allo studio. Per verificare il completamento della procedura controllare nella propria area riservata, a distanza di qualche giorno dall’operazione, l’esistenza dell’ISEE in base dati.

" + } ] }, { @@ -7807,6 +7936,9 @@ }, { "name": "Design" + }, + { + "name": "Design del prodotto, della comunicazione e degli interni" } ] } @@ -7854,6 +7986,9 @@ }, { "name": "Incontro d’ateneo" + }, + { + "name": "Incontri" } ] }, @@ -7933,6 +8068,9 @@ "name": "Tipologia di struttura", "items": [ { + "name": "Lorem ipsum dolor sit amet consectetur adipiscing elit lorem ipsum" + }, + { "name": "Area didattica" }, { diff --git a/gulpfile.js b/gulpfile.js index a2f0f8c..84fc963 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -58,7 +58,7 @@ server: { baseDir: options.paths.dist.base, }, - startPath: '/pages/corsi-laurea/index.html', + startPath: '/index.html', port: 8000 }); done(); diff --git a/src/assets/css/blocks/accordion.css b/src/assets/css/blocks/accordion.css index 29ae512..40582fe 100644 --- a/src/assets/css/blocks/accordion.css +++ b/src/assets/css/blocks/accordion.css @@ -5,7 +5,7 @@ &:last-child:not(:first-child){ @apply border-b; } - > span{ + > button{ @apply relative flex items-center @@ -52,7 +52,7 @@ } &.is-toggled{ @apply bg-black text-white border-grey-500; - > span{ + > button{ &::before{ background-image: url("data:image/svg+xml,%3Csvg width='50' height='50' viewBox='0 0 50 50' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M37.5 26H12.5V24H37.5V26Z' fill='white'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M24 37.5L24 12.5L26 12.5L26 37.5L24 37.5Z' fill='white'/%3E%3C/svg%3E%0A"); @apply rotate-45; @@ -101,7 +101,7 @@ &--sm{ /* @apply lg:w-1/2; */ .block-accordion__inner{ - > span{ + > button{ @apply text-size-md pl-[calc(2.25rem+0.625rem)] py-1; &::before{ @apply w-9 -translate-y-0; @@ -115,7 +115,7 @@ @at-root body.has-primary-bg{ .block-accordion{ &__inner{ - > span{ + > button{ &:hover{ @apply text-yellow-100; background-image: url("data:image/svg+xml,%3Csvg width='50' height='50' viewBox='0 0 50 50' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M37.5 26H12.5V24H37.5V26Z' fill='black'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M24 37.5L24 12.5L26 12.5L26 37.5L24 37.5Z' fill='%23FFCC00'/%3E%3C/svg%3E%0A"); diff --git a/src/assets/css/blocks/alert.css b/src/assets/css/blocks/alert.css new file mode 100644 index 0000000..b11f66d --- /dev/null +++ b/src/assets/css/blocks/alert.css @@ -0,0 +1,15 @@ +.block-alert{ + @apply mb-sm lg:mb-base; + &__inner{ + @apply bg-black pl-1.5 pt-1.5 pr-5 pb-4 text-white inline-flex lg:w-1/2; + &::before{ + content: ''; + background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 37 37'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18.5 28a9.5 9.5 0 1 0 0-19 9.5 9.5 0 0 0 0 19Zm0 1C24.299 29 29 24.299 29 18.5S24.299 8 18.5 8 8 12.701 8 18.5 12.701 29 18.5 29Z' fill='%23fff'/%3E%3Cpath d='m18.109 21.408-.5-7.574h1.54l-.473 7.574h-.567ZM17.649 24v-1.458h1.459V24H17.65Z' fill='%23fff'/%3E%3C/svg%3E"); + background-size: 36px; + @apply inline-block bg-no-repeat w-9 h-9 mr-1.5 shrink-0; + } + span{ + @apply pt-1.5; + } + } +} \ No newline at end of file diff --git a/src/assets/css/blocks/featured-content.css b/src/assets/css/blocks/featured-content.css index 116fb71..2a499e3 100644 --- a/src/assets/css/blocks/featured-content.css +++ b/src/assets/css/blocks/featured-content.css @@ -25,6 +25,7 @@ } .block-paragraph{ @apply mt-8.75 lg:w-11/12; + @apply mb-0 !important; p{ @apply text-size-md-lg mb-0; } @@ -137,6 +138,11 @@ p{ @apply text-white mb-0 text-size-md text-size-md; } + > *{ + &:last-child{ + @apply mb-0; + } + } } .block-featured-tabs-tab__img{ @apply lg:order-2 mb-sm md:mb-base lg:mb-0 aspect-[3/2]; diff --git a/src/assets/css/blocks/files-list.css b/src/assets/css/blocks/files-list.css index 742005f..cb5b667 100644 --- a/src/assets/css/blocks/files-list.css +++ b/src/assets/css/blocks/files-list.css @@ -1,4 +1,8 @@ .block-files-list{ + @apply mb-sm md:mb-base; + &:last-child{ + @apply mb-0; + } &__inner{ > p{ @apply font-bold mb-4; @@ -27,6 +31,9 @@ } } } + &:has(+ .block-files-list){ + @apply mb-sm; + } @at-root body.has-primary-bg{ .block-files-list{ &__inner{ diff --git a/src/assets/css/blocks/filters.css b/src/assets/css/blocks/filters.css index 075f3f4..df507cc 100644 --- a/src/assets/css/blocks/filters.css +++ b/src/assets/css/blocks/filters.css @@ -23,6 +23,9 @@ } &.is-visible{ @apply flex; + .block-filters__inner{ + @apply block m-0; + } } } &--alt{ diff --git a/src/assets/css/blocks/hero-banner.css b/src/assets/css/blocks/hero-banner.css deleted file mode 100644 index 715c11a..0000000 --- a/src/assets/css/blocks/hero-banner.css +++ /dev/null @@ -1,72 +0,0 @@ -.block-hero-banner{ - height: var(--hero-banner-height); - @apply grid-container overflow-hidden mb-10; - &__img{ - @apply w-full h-full; - img{ - @apply w-full h-full object-cover; - } - } -} - -.block-banner-scroll{ - /* @apply h-[900px]; */ - height: 160vh; - @apply mb-10 relative; - &__content{ - @apply sticky top-[100px] z-10 pt-8; - h1{ - font-size: 5.75vw; - line-height: 110%; - span{ - background: transparent; - @apply relative; - /* &::after{ - content: ''; - height: 90%; - top: 10%; - @apply absolute left-0 inline-block w-full bg-accent-200 -z-10; - - } */ - &.is-active{ - } - } - } - } - &__images{ - margin-left: var(--grid-offset); - width: calc(100% - var(--grid-offset)); - @apply absolute top-0 z-0 left-0 h-full; - .block-banner-scroll-img{ - transition: opacity .1s ease; - @apply w-[30vw] absolute opacity-0; - picture{ - @apply aspect-square; - img{ - @apply w-full h-full object-cover; - } - } - &:first-child{ - right: 10vw; - top: 30vh; - @apply opacity-100 !important; - } - &:nth-child(2){ - left: 5vw; - top: 70vh; - @apply opacity-100 !important; - } - &:nth-child(3){ - right: 30vw; - top: 200vh; - } - &:nth-child(4){ - right: 5vw; - top: 150vh; - } - &.is-visible{ - /* @apply opacity-100; */ - } - } - } -} \ No newline at end of file diff --git a/src/assets/css/blocks/home-scroll-banner.css b/src/assets/css/blocks/home-scroll-banner.css new file mode 100644 index 0000000..864ce1a --- /dev/null +++ b/src/assets/css/blocks/home-scroll-banner.css @@ -0,0 +1,80 @@ +.block-hero-banner{ + height: var(--hero-banner-height); + @apply grid-container overflow-hidden mb-10; + &__img{ + @apply w-full h-full; + img{ + @apply w-full h-full object-cover; + } + } +} + +.block-home-scroll-banner{ + //height: 160vh; + @apply mb-base md:mb-lg xl:mb-xl; + &__video{ + @screen lg{ + height: calc(var(--home-scroll-banner-img-height) - var(--grid-gutter)*2); + } + @apply aspect-video md:aspect-auto relative grid-container overflow-hidden mb-[calc(var(--grid-gutter)*2)] z-30; + video{ + @apply w-full h-full object-cover; + } + } + &__title{ + /* @apply sticky top-[100px] z-10 pt-8; */ + @apply lg:sticky top-0 bottom-[calc(var(--grid-gutter)*2)] md:pt-[calc(var(--grid-gutter)*2)] z-20 mb-0; + } + &__images{ + height: 200vw; + @screen lg{ + height: 120vw; + } + @apply md:pt-[10vw] lg:pt-[20vw] relative z-10; + .block-home-scroll-banner-img{ + -webkit-backface-visibility: hidden; + -moz-backface-visibility: hidden; + -ms-backface-visibility: hidden; + backface-visibility: hidden; + + -webkit-perspective: 1000; + -moz-perspective: 1000; + -ms-perspective: 1000; + perspective: 1000; + + will-change: transform, opacity; /* Prevents flicker in Safari */ + transition: opacity .2s linear; + + @apply w-1/2 lg:w-1/3 opacity-0; + picture{ + @apply aspect-square overflow-hidden; + img{ + @apply w-full h-full object-cover; + } + } + &:first-child{ + margin-left: calc(100% / 12 * 5); + @screen lg{ + margin-left: calc(100% / 12 * 7); + } + } + &:nth-child(2){ + margin-left: calc(100% / 12 * 1); + } + &:nth-child(3){ + margin-left: calc(100% / 12 * 6); + @screen lg{ + margin-left: calc(100% / 12 * 8); + } + @apply relative z-10; + } + &:nth-child(4){ + margin-left: calc(100% / 12 * 2); + @screen lg{ + margin-left: calc(100% / 12 * 5); + } + @apply relative z-0 mt-40; + } + } + } +} \ No newline at end of file diff --git a/src/assets/css/blocks/images-grid.css b/src/assets/css/blocks/images-grid.css index 90e975a..ce43d04 100644 --- a/src/assets/css/blocks/images-grid.css +++ b/src/assets/css/blocks/images-grid.css @@ -1,4 +1,5 @@ .block-images-grid{ + @apply mb-base md:mb-lg; &--black{ @apply bg-black py-12; } diff --git a/src/assets/css/blocks/index.css b/src/assets/css/blocks/index.css index b191e8d..f6a5a18 100644 --- a/src/assets/css/blocks/index.css +++ b/src/assets/css/blocks/index.css @@ -1,6 +1,7 @@ @import "../utilities.css"; @import "block.css"; @import "accordion.css"; +@import "alert.css"; @import "carousel.css"; @import "events-list-row.css"; @import "featured-content.css"; @@ -8,7 +9,7 @@ @import "filters.css"; @import "gallery.css"; @import "grid-list.css"; -@import "hero-banner.css"; +@import "home-scroll-banner.css"; @import "image.css"; @import "images-grid.css"; @import "link"; diff --git a/src/assets/css/blocks/link.css b/src/assets/css/blocks/link.css index 2c8a4b6..42192ad 100644 --- a/src/assets/css/blocks/link.css +++ b/src/assets/css/blocks/link.css @@ -8,10 +8,10 @@ } @apply mx-[calc(var(--grid-gutter)*2)] md:ml-[var(--grid-offset)]; @at-root :is(.block-container) .block-link.block-container{ - @apply mx-0; + @apply mx-0 w-full; } @at-root :is(.grid-container) .block-link.block-container{ - @apply mx-0; + @apply mx-0 w-full; } } @apply flex text-size-lg border-y border-grey-200 relative; diff --git a/src/assets/css/blocks/links-list.css b/src/assets/css/blocks/links-list.css index 9bad7fe..d6e0d2a 100644 --- a/src/assets/css/blocks/links-list.css +++ b/src/assets/css/blocks/links-list.css @@ -39,6 +39,11 @@ @screen lg{ columns: 2; gap: calc(var(--grid-gutter)*2); + /* @apply grid grid-cols-2; */ + } + + &:has(li:only-child){ + columns: 1; } } } diff --git a/src/assets/css/blocks/paragraph.css b/src/assets/css/blocks/paragraph.css index 4d094de..88bb6d8 100644 --- a/src/assets/css/blocks/paragraph.css +++ b/src/assets/css/blocks/paragraph.css @@ -13,16 +13,28 @@ } } ul, ol{ - @apply ml-2 mb-sm; - li{ - @apply pl-2; - } + @apply ml-3 mb-sm; } ol{ - @apply list-decimal; + counter-reset: item; + @apply list-none ml-0; + li{ + counter-increment: item; + @apply pl-0 inline-flex w-full; + &::before{ + content: counter(item) " "; + margin-right: 20px; + width: 30px; + display: inline-block; + @apply shrink-0; + } + } } ul{ - list-style-type: "-"; + list-style-type: "—"; + li{ + @apply pl-9; + } } &--lg{ p{ diff --git a/src/assets/css/components/card.css b/src/assets/css/components/card.css index ed45dc0..abd4725 100644 --- a/src/assets/css/components/card.css +++ b/src/assets/css/components/card.css @@ -1,8 +1,8 @@ .cards-container{ - @apply grid-container mb-base; - @at-root :where(.grid-container) .cards-container{ + @apply pl-[var(--grid-gutter)] md:pl-[var(--grid-offset)] pr-[var(--grid-gutter)] mb-base overflow-x-clip; + /* @at-root :where(.grid-container) .cards-container{ @apply mx-0 px-0; - } + } */ &__inner{ @apply grid gap-[calc(var(--grid-gutter)*2)] grid-cols-12; /* &-squares{ @@ -45,26 +45,28 @@ } } &__title{ - @apply w-full flex items-start; + @apply w-full flex items-end /*items-start*/; > *:not(.card__icon){ @apply text-size-lg mb-0 w-full; } > a{ @apply no-underline; + &[href^="mailto"]{ + @apply break-words; + } } .card__icon{ - @apply shrink-0 ml-3 relative top-2.5; - svg{ + @apply shrink-0 ml-3 relative; + &::before{ + content: ''; + background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 20'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='m22.711 9-6.778-7.32L17.4.32 26.363 10 17.4 19.68l-1.467-1.36L22.71 11H0V9h22.711Z' fill='%23000'/%3E%3C/svg%3E"); + background-size: 27px 20px; + @apply inline-block w-[27px] h-5 bg-no-repeat bg-contain; } } - /* &:first-child:last-child{ - @apply items-start; - > p{ - + svg{ - @apply mb-0 mt-3; - } - } - } */ + } + &__date{ + @apply text-md text-grey-300 mb-xxs; } header{ @apply mb-base xl:mb-0; @@ -83,12 +85,20 @@ } &:hover{ @apply bg-black text-white; - p{ + p, span{ @apply text-white; } + &:not(.card--y) .card__icon{ + &::before{ + background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 20'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='m22.711 9-6.778-7.32L17.4.32 26.363 10 17.4 19.68l-1.467-1.36L22.71 11H0V9h22.711Z' fill='%23FFF'/%3E%3C/svg%3E"); + } + } } &--columns{ /* aspect-ratio: unset; */ + .card__title{ + @apply items-start; + } > div{ @apply w-full xl:aspect-square; &:first-child{ @@ -157,6 +167,11 @@ } } &--y{ + .card__icon{ + &::before{ + background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 20'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='m22.711 9-6.778-7.32L17.4.32 26.363 10 17.4 19.68l-1.467-1.36L22.71 11H0V9h22.711Z' fill='%23FFCC00'/%3E%3C/svg%3E"); + } + } &.card--alt{ @apply text-yellow-100; p{ @@ -173,6 +188,9 @@ } } } + &--no-arrow{ + @apply items-start; + } &--bottom-title{ @apply flex-nowrap; .card__title{ @@ -188,4 +206,48 @@ @apply top-[unset] bottom-2.5; } } +} + +.card-grid-item{ + @apply items-start; + &__header{ + @apply grow; + } + &__bg{ + @apply absolute left-0 top-0 w-full h-full scale-125 origin-center opacity-0 pointer-events-none bg-black; + img{ + @apply w-full h-full object-cover z-10 opacity-75; + } + } + .card__title{ + p{ + @apply text-md font-bold; + } + } + .card__category, .card__date{ + @apply text-sm; + } + &:hover{ + @apply bg-[#0066FF]; + } + &--has-background{ + &.is-hovered{ + @apply bg-transparent z-20; + p, span{ + } + .card-grid-item__bg{ + @apply opacity-100; + } + &::after{ + content: ''; + @apply w-full h-full border border-white absolute left-0 top-0; + } + } + } + &--eventi{ + @apply bg-black text-white; + p{ + @apply text-white !important; + } + } } \ No newline at end of file diff --git a/src/assets/css/components/inputs.css b/src/assets/css/components/inputs.css index d6ecca0..83cd535 100644 --- a/src/assets/css/components/inputs.css +++ b/src/assets/css/components/inputs.css @@ -1,4 +1,8 @@ .input{ + --input-bg: 242,245,245; + @screen lg{ + --input-bg: 255,255,255; + } &__label{ @apply font-bold mb-3.75 block; } @@ -22,6 +26,11 @@ } } } + &::before{ + content: ''; + background: linear-gradient(90deg, rgba(var(--input-bg),0) 0%, rgba(var(--input-bg),1) 25%); + @apply w-24 h-[calc(100%-2px)] absolute right-0 top-px pointer-events-none; + } &::after{ content: ''; background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 37 37'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='m18.504 21.319 5.66-5.241.68.733-6.34 5.87-6.34-5.87.68-.733 5.66 5.24Z' fill='%23000'/%3E%3C/svg%3E"); @@ -37,6 +46,9 @@ } } &__search{ + &:before{ + content: none; + } &::after{ background-image: url("data:image/svg+xml,%3Csvg width='37' height='37' viewBox='0 0 37 37' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.5 24C20.6421 24 24 20.6421 24 16.5C24 12.3579 20.6421 9 16.5 9C12.3579 9 9 12.3579 9 16.5C9 20.6421 12.3579 24 16.5 24ZM16.5 25C21.1944 25 25 21.1944 25 16.5C25 11.8056 21.1944 8 16.5 8C11.8056 8 8 11.8056 8 16.5C8 21.1944 11.8056 25 16.5 25Z' fill='black'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M22.8555 22.1465L29.3555 28.6465L28.6484 29.3536L22.1484 22.8536L22.8555 22.1465Z' fill='black'/%3E%3C/svg%3E%0A"); } @@ -49,7 +61,8 @@ @apply absolute right-0 top-1.5 w-px h-6 bg-grey-400; } } - @at-root :where(body.has-primary-bg) .input{ + @at-root :where(body.has-primary-bg) .block-filters .block-filters__inner .input{ + --input-bg: 255,204,0; &__field{ @apply border-yellow-300; input, select{ @@ -60,7 +73,7 @@ -webkit-box-shadow: 0 0 0 30px theme(colors.yellow.100) inset !important; } } - } + } } &__clear{ &::after{ diff --git a/src/assets/img/post_type/eventi/petit-tour.jpg b/src/assets/img/post_type/eventi/petit-tour.jpg new file mode 100644 index 0000000..483a678 --- /dev/null +++ b/src/assets/img/post_type/eventi/petit-tour.jpg Binary files differ diff --git a/src/assets/js/blocks/cards-grid.js b/src/assets/js/blocks/cards-grid.js new file mode 100644 index 0000000..b93975c --- /dev/null +++ b/src/assets/js/blocks/cards-grid.js @@ -0,0 +1,20 @@ +window.addEventListener('load', (event) => { + + const cards = document.querySelectorAll('.card-grid-item') + cards.forEach(card => { + const marqueeWrapper = card.closest('.block-marquee-posts-row') + card.addEventListener('mouseenter', function(){ + this.classList.add('is-hovered') + if (marqueeWrapper){ + marqueeWrapper.classList.add('is-hovered') + } + }) + card.addEventListener('mouseleave', function(){ + this.classList.remove('is-hovered') + if (marqueeWrapper){ + marqueeWrapper.classList.remove('is-hovered') + } + }) + }) + +}) diff --git a/src/assets/js/blocks/home-scroll-banner.js b/src/assets/js/blocks/home-scroll-banner.js new file mode 100644 index 0000000..ee2d576 --- /dev/null +++ b/src/assets/js/blocks/home-scroll-banner.js @@ -0,0 +1,58 @@ +window.addEventListener('load', (event) => { + + const banner = document.querySelector('.block-home-scroll-banner') + + if (typeof(banner) == 'undefined' || banner == null) return + + function setBannerHeight(banner){ + if (window.matchMedia('(min-width: 62rem)').matches) { + //get element top offset + const bannerOffsetTop = banner.offsetTop + //set block height + banner.style.setProperty('--home-scroll-banner-img-height', `${window.innerHeight-bannerOffsetTop}px`) + } + } + + setBannerHeight(banner) + + function getImagePos(image, scrollPosition){ + const imageSpeed = image.getAttribute('data-home-scroll-banner-image-parallax-speed') + const imagePos = (scrollPosition * 0.1) * imageSpeed + image.style.transform = `translate3d(0,-${imagePos}px,0)` + } + + + const parallaxImages = document.querySelectorAll('[data-home-scroll-banner-image]') + + document.addEventListener('scroll', function(){ + const scrollPosition = window.scrollY + parallaxImages.forEach(image => { + getImagePos(image, scrollPosition) + }) + }) + + let observer = new IntersectionObserver((entries) => { + + entries.forEach(entry => { + + if(entry.isIntersecting && (entry.target.getBoundingClientRect().top > 0)){ + entry.target.classList.add('is-visible') + entry.target.style.opacity = entry.intersectionRatio.toFixed(1) + } + + }) + + }, + { + threshold: [0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1] + }) + + parallaxImages.forEach(image => { + observer.observe(image) + }) + + window.addEventListener('resize', function(){ + setBannerHeight(banner) + }) + +}) diff --git a/src/assets/js/site.js b/src/assets/js/site.js index c91e0ab..1c3f74a 100644 --- a/src/assets/js/site.js +++ b/src/assets/js/site.js @@ -1,7 +1,9 @@ import './blocks/accordion.js'; import './blocks/carousel.js'; +import './blocks/cards-grid.js'; import './blocks/inputs.js'; import './blocks/marquee.js'; +import './blocks/home-scroll-banner.js'; import './blocks/page-title-banner.js'; import './blocks/secondary-nav.js'; import './blocks/tabs.js'; diff --git a/src/assets/video/homepage.mp4 b/src/assets/video/homepage.mp4 new file mode 100644 index 0000000..075a015 --- /dev/null +++ b/src/assets/video/homepage.mp4 Binary files differ diff --git a/src/blocks/accordion.twig b/src/blocks/accordion.twig index 8bc8ee1..006f111 100644 --- a/src/blocks/accordion.twig +++ b/src/blocks/accordion.twig @@ -4,6 +4,8 @@ {% if block.multi_columns %}{% set multi_columns = true %}{% endif %} +{% set id = random(99999) %} +
{# if accordion has columns set threshold and set first column #} @@ -15,8 +17,8 @@ {% for item in block.content.items %}
- {{item.title}} -
+ +
- {{tab.text}} + {% for inner_block in tab.inner_blocks %} + {% include './'~inner_block.key~'.twig' with {'block': inner_block } %} + {% endfor %}
-
+
{% endfor %} \ No newline at end of file diff --git a/src/blocks/home-scroll-banner.twig b/src/blocks/home-scroll-banner.twig new file mode 100644 index 0000000..ff19dae --- /dev/null +++ b/src/blocks/home-scroll-banner.twig @@ -0,0 +1,20 @@ +
+
+ {% include "../layout/partials/video.twig" with {"video": block.content.video } %} +
+
+ + {% set block_title = {"key": "title", "tag": "h1", "classes": "block-title--lg" } %} + {% include "./title.twig" with {"block": block_title, "title": block.content.title } %} + +
+ +
+ {% for image in block.content.images %} +
+ {% include "../layout/partials/picture.twig" with {"image": image } %} +
+ {% endfor %} +
+ +
\ No newline at end of file diff --git a/src/blocks/page-title-banner.twig b/src/blocks/page-title-banner.twig index 0f7c247..ecb51fc 100644 --- a/src/blocks/page-title-banner.twig +++ b/src/blocks/page-title-banner.twig @@ -11,8 +11,10 @@ {% endif %} - - {% set block_title = {"key": "title", "tag": "h1", "classes": "block-title--lg" } %} - {% include "./title.twig" with {"block": block_title, "title": block.content.title } %} + {% if block.content.title %} + {% set block_title = {"key": "title", "tag": "h1", "classes": "block-title--lg" } %} + {% include "./title.twig" with {"block": block_title, "title": block.content.title } %} + {% endif %} + \ No newline at end of file diff --git a/src/index.twig b/src/index.twig index a7f32ac..cc91489 100644 --- a/src/index.twig +++ b/src/index.twig @@ -2,7 +2,7 @@ {% block content %} - {% for block in pages[0].blocks %} + {% for block in post_type.pages[0].blocks %} {% include './blocks/'~block.key~'.twig' with {'block': block } %} {% endfor %} diff --git a/src/layout/partials/card.twig b/src/layout/partials/card.twig index b0da098..8be88c7 100644 --- a/src/layout/partials/card.twig +++ b/src/layout/partials/card.twig @@ -1,8 +1,8 @@ -<{% if card.columns %}div{% else %}a href="{{card.url}}"{% endif %} class="card{% if card.columns %} card--columns{% endif %}{% if card.text %} card--column-span{% endif %} {{card.classes}}"> +<{% if card.columns %}div{% else %}a href="{{card.url}}"{% endif %} class="card{% if card.columns %} card--columns{% endif %}{% if card.text %} card--column-span{% endif %}{% if card.hide_arrow %} card--no-arrow{% endif %} {{card.classes}}"> {% if card.columns %}
- + {% if card.subtitle %}

{{card.subtitle}}

{% endif %} @@ -45,7 +45,9 @@ {% endif %}

{{card.title}}

-
+ {% if card.hide_arrow != true %} +
+ {% endif %}
{% endif %} diff --git a/src/layout/partials/sitemap-list.twig b/src/layout/partials/sitemap-list.twig new file mode 100644 index 0000000..9bd022a --- /dev/null +++ b/src/layout/partials/sitemap-list.twig @@ -0,0 +1,10 @@ +{% if pages %} + +{% endif %} \ No newline at end of file diff --git a/src/layout/single-event.twig b/src/layout/single-event.twig index ed7f009..77d9db6 100644 --- a/src/layout/single-event.twig +++ b/src/layout/single-event.twig @@ -47,13 +47,27 @@ }, { "label": "Categoria", - "text": post.terms[0][1][0] + "text": taxonomies.events.terms[1].items[~post.terms.1.1~].name }, + { + "label": "Luogo", + "text": taxonomies.events.terms[0].items[~post.terms.0.1~].name + } ] } } %} {% include "../blocks/grid-list.twig" with {"block": event_info } %} + {% set event_signup = { + "key": "link", + "url": "https://www.eventbrite.com", + "content": { + "name": "Vai alla registrazione", + "external_name": "Eventbrite" + } + } %} + {% include "../blocks/link.twig" with {"block": event_signup } %} +
diff --git a/src/layout/single-tender.twig b/src/layout/single-tender.twig index c9f5a7f..48c46c2 100644 --- a/src/layout/single-tender.twig +++ b/src/layout/single-tender.twig @@ -90,8 +90,8 @@ {{post.content}}
- {% if post.files_list %} -
+
+ {% if post.files_list %} {% set tender_files = { "key": "files-list", "classes": "", @@ -101,8 +101,20 @@ } } %} {% include '../blocks/files-list.twig' with {'block': tender_files } %} -
- {% endif %} + {% endif %} + + {% if post.result %} + {% set tender_result = { + "key": "files-list", + "classes": "", + "content": { + "label": "Esito", + "items": post.result + } + } %} + {% include '../blocks/files-list.twig' with {'block': tender_result } %} + {% endif %} +
{% if post.status.class != 'expired' and post.status.class != 'completed' %}
diff --git a/src/pages/sitemap.twig b/src/pages/sitemap.twig new file mode 100644 index 0000000..d6d6157 --- /dev/null +++ b/src/pages/sitemap.twig @@ -0,0 +1,24 @@ +{% set currentPage = 20 %} + +{% set bodyClasses = 'page' %} + +{% extends "../layout/page.twig" %} + +{% block content %} + {% for block in post_type.pages[currentPage].blocks %} + {% include '../blocks/'~block.key~'.twig' with {'block': block } %} + {% endfor %} + +
+
+ {% for page in blocks.header.navbar.nav %} +
+ {{page.name}} + {% include "../layout/partials/sitemap-list.twig" with {'pages': page.children} %} +
+ {% endfor %} +
+
+ + +{% endblock %} \ No newline at end of file