feat: front page, event front page and popup page layouts on TYPO3 13
Restored from a46918d unchanged.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
2999abc16c
commit
53faeccb70
9 files changed
+289
No files matched your search
@@ -0,0 +1,31 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:render partial="Topnav" arguments="{_all}"/>
|
||||
<f:render partial="Mainnav" section="Main" arguments="{_all}"/>
|
||||
<header>
|
||||
<f:render partial="HeaderSlider" arguments="{_all}"/>
|
||||
</header>
|
||||
<main id="main-content">
|
||||
<f:if condition="{data.tx_eptheme_hide_searchbar} || {settings.hideSearchbar}">
|
||||
<f:else>
|
||||
<f:cObject typoscriptObjectPath="lib.searchBar"/>
|
||||
</f:else>
|
||||
</f:if>
|
||||
<f:render section="Content"/>
|
||||
</main>
|
||||
<footer>
|
||||
<f:render partial="Footer" arguments="{_all}"/>
|
||||
</footer>
|
||||
<aside>
|
||||
<f:render partial="ContactBar" arguments="{_all}"/>
|
||||
<f:render partial="Mobilenav" section="Main" arguments="{_all}"/>
|
||||
<f:if condition="{data.tx_eptheme_hide_searchbar} || {settings.hideSearchbar}">
|
||||
<f:else>
|
||||
<f:render partial="Search/MobileSearch" arguments="{_all}"/>
|
||||
</f:else>
|
||||
</f:if>
|
||||
</aside>
|
||||
<f:render partial="Config" arguments="{_all}" />
|
||||
</html>
|
||||
@@ -0,0 +1,22 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:render partial="Mainnav" section="Main" arguments="{_all}"/>
|
||||
<header>
|
||||
<f:render partial="EventHero" arguments="{_all}"/>
|
||||
<f:render partial="EventDisturber" arguments="{headline: settings.eventDisturberHeadline, listItems: settings.eventDisturberListitems, buttonLabel: settings.eventDisturberButtonLabel, buttonLink: settings.eventDisturberButtonLink}"/>
|
||||
</header>
|
||||
<main id="main-content">
|
||||
<f:render section="Content"/>
|
||||
</main>
|
||||
<footer>
|
||||
<f:render partial="Footer" arguments="{_all}"/>
|
||||
</footer>
|
||||
<aside>
|
||||
<f:render partial="ContactBar" arguments="{_all}"/>
|
||||
<f:render partial="Topnav" arguments="{_all}"/>
|
||||
<f:render partial="Mobilenav" section="Main" arguments="{_all}"/>
|
||||
</aside>
|
||||
<f:render partial="Config" arguments="{_all}" />
|
||||
</html>
|
||||
@@ -0,0 +1,7 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:render section="Content"/>
|
||||
<f:render partial="Config" arguments="{_all}" />
|
||||
</html>
|
||||
@@ -0,0 +1,34 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<div class="container lg:max-w-screen-2xl my-8">
|
||||
<div class="bg-pattern">
|
||||
<div class="pt-8 lg:py-8 {ep:themeClasses(classes: '{sbw: \'bg-sbw-primary/80\', snz: \'bg-snz-primary/80\', suz: \'bg-suz-primary/80\', uch: \'bg-uch-primary/80\'}', key: settings.themekey)}">
|
||||
<div class="flex flex-col space-y-4 lg:space-y-0 lg:flex-row items-center">
|
||||
<div class="w-full lg:w-1/3 font-black uppercase text-white text-4xl lg:text-3xl text-center">
|
||||
{headline -> f:format.raw()}
|
||||
</div>
|
||||
<div class="w-full lg:w-1/3 lg:px-4 text-center">
|
||||
<ul class="list-none inline-flex lg:flex flex-col space-y-1 lg:space-y-2">
|
||||
<f:for each="{listItems -> v:iterator.explode(glue: ';')}" as="listItem">
|
||||
<li class="flex items-center space-x-2 text-white">
|
||||
{ep:icon(icon: 'check', class: 'w-6 h-6')}
|
||||
<span>{listItem -> f:format.raw()}</span>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="w-full lg:w-1/3 lg:px-4">
|
||||
<a class="button bg-button w-full"
|
||||
href="{f:uri.typolink(parameter: buttonLink)}">
|
||||
{buttonLabel -> f:format.raw()}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,75 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<div class="relative max-w-screen-2xl mx-auto">
|
||||
<div class="absolute bottom-0 left-0 inset-x-0">
|
||||
<div class="py-8 {ep:themeClasses(classes: '{sbw: \'bg-sbw-overlay/55\', snz: \'bg-snz-primary/50\', suz: \'bg-suz-primary/50\', uch: \'bg-uch-primary/50\'}', key: settings.themekey)}">
|
||||
<div class="max-w-screen-md mx-auto px-4 md:px-0 flex">
|
||||
<div class="hidden sm:flex flex-col justify-center {ep:themeClasses(classes: '{sbw: \'bg-sbw-primary\', snz: \'bg-snz-secondary\', suz: \'bg-suz-secondary\', uch: \'bg-uch-secondary\'}', key: settings.themekey)}">
|
||||
<div class="text-white font-extrabold text-3xl lg:text-5xl flex-1 flex flex-col justify-around items-center text-center leading-none py-2 px-8 md:px-16">
|
||||
<span>{settings.eventDateDayFrom -> f:format.raw()}</span>
|
||||
<span>-</span>
|
||||
<span>{settings.eventDateDayTo -> f:format.raw()}</span>
|
||||
</div>
|
||||
<div class="w-full px-4 bg-white text-center sbw:text-sbw-primary snz:text-snz-primary-dark suz:text-suz-primary-dark uch:text-uch-secondary p-2 whitespace-nowrap text-xl md:text-2xl uppercase font-bold leading-tight">
|
||||
{settings.eventDateMonth -> f:format.raw()}
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-white uppercase text-3xl sm:text-5xl lg:text-7xl text-right sm:text-left font-extrabold px-4 md:px-8">
|
||||
{settings.eventHeroClaim -> f:format.raw()}
|
||||
</div>
|
||||
<div class="text-white text-xl lg:text-2xl font-light border-l-4 md:border-l-8 border-white pl-4">
|
||||
{settings.eventHeroDescription -> f:format.raw()}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sm:hidden text-white text-2xl uppercase text-center leading-none py-4 {ep:themeClasses(classes: '{sbw: \'bg-sbw-secondary\', snz: \'bg-snz-primary\', suz: \'bg-suz-primary\', uch: \'bg-uch-primary\'}', key: settings.themekey)}">
|
||||
{settings.eventDateDayFrom -> f:format.raw()} - {settings.eventDateDayTo -> f:format.raw()} {settings.eventDateMonth -> f:format.raw()}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<f:alias map="{image: slide.image.0}">
|
||||
<f:if condition="{image}">
|
||||
<picture>
|
||||
<source srcset="{f:uri.image(image: image, width: '1560')}" media="(min-width: 1280px)">
|
||||
<source srcset="{f:uri.image(image: image, width: '1280')}" media="(min-width: 768px)">
|
||||
<source srcset="{f:uri.image(image: image, height: '1024', cropVariant: 'mobile')}" media="(max-width: 767px)">
|
||||
<f:image class="block w-full h-full object-cover"
|
||||
image="{image}"
|
||||
height="1024"
|
||||
cropVariant="mobile"
|
||||
alt="{image.alternative}"/>
|
||||
</picture>
|
||||
</f:if>
|
||||
</f:alias>
|
||||
<f:if condition="{badge}">
|
||||
<f:alias map="{badgeData: badge.0.data}">
|
||||
<f:link.typolink parameter="{badgeData.link}">
|
||||
<div class="absolute top-0 right-0 mt-8 mr-4">
|
||||
<svg viewBox="0 0 200 200"
|
||||
class="w-40 h-40">
|
||||
<circle id="bgouter" cx="100" cy="100" r="100" fill="currentColor" class="{ep:themeClasses(classes: '{sbw: \'text-sbw-primary/50\', snz: \'text-snz-primary/50\', suz: \'text-suz-primary/50\', uch: \'text-uch-primary/50\'}', key: settings.themekey)}"/>
|
||||
<circle id="bginner" cx="100" cy="100" r="70" fill="currentColor" class="{ep:themeClasses(classes: '{sbw: \'text-sbw-primary\', snz: \'text-snz-primary\', suz: \'text-suz-primary\', uch: \'text-uch-primary\'}', key: settings.themekey)}"/>
|
||||
</svg>
|
||||
<div class="absolute top-1/2 left-1/2 -translate-xy-1/2 flex flex-col items-center justify-around">
|
||||
<span class="text-white uppercase font-extrabold text-center leading-tight">{badgeData.title -> f:format.raw()}</span>
|
||||
<span class="text-white uppercase text-center leading-tight">{badgeData.subtitle -> f:format.raw()}</span>
|
||||
</div>
|
||||
</div>
|
||||
</f:link.typolink>
|
||||
</f:alias>
|
||||
</f:if>
|
||||
<f:comment><!--
|
||||
<f:if condition="{settings.eventAddon}">
|
||||
<f:link.typolink parameter="{settings.eventAddon.link}" class="{settings.eventAddon.class}"
|
||||
title="{settings.eventAddon.title}">
|
||||
<f:image src="{settings.eventAddon.file}"
|
||||
alt="{settings.eventAddon.title}"
|
||||
title="{settings.eventAddon.title}"/>
|
||||
</f:link.typolink>
|
||||
</f:if>
|
||||
--></f:comment>
|
||||
</div>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,87 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<div class="splide mb-8"
|
||||
data-controller="slider"
|
||||
data-slider-preset-value="header">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{slides}" as="slide" iteration="iteration">
|
||||
<li class="splide__slide">
|
||||
<div class="herounit">
|
||||
<f:alias map="{image: slide.image.0}">
|
||||
<f:if condition="{image}">
|
||||
<div class="herounit__image">
|
||||
<picture class="w-full h-full">
|
||||
<source srcset="{f:uri.image(image: image, width: '1370')}" media="(min-width: 768px)">
|
||||
<source srcset="{f:uri.image(image: image, height: '640', cropVariant: 'mobile')}" media="(max-width: 767px)">
|
||||
<img src="{f:uri.image(image: image, cropVariant: 'mobile', height: '640')}" class="w-full h-auto" alt="{image.alternative}">
|
||||
</picture>
|
||||
</div>
|
||||
</f:if>
|
||||
</f:alias>
|
||||
<div class="absolute left-0 bottom-0 inset-x-0 px-4 py-8 w-full md:bottom-1/2 md:translate-y-1/2">
|
||||
<div class="lg:container px-0">
|
||||
<div class="p-4 bg-ep-primary-dark/80 sbw:bg-sbw-primary/80 snz:bg-snz-primary/80 suz:bg-suz-primary/80 uch:bg-uch-primary/80 ser:bg-ser-primary/80 mb-4 md:p-8 md:max-w-2xl">
|
||||
<span class="block text-2xl md:text-4xl lg:text-5xl max-w-sm md:max-w-none font-black text-white uppercase mb-4 md:mb-8">
|
||||
{slide.headline}
|
||||
</span>
|
||||
<f:if condition="{slide.subline}">
|
||||
<span class="hidden lg:block md:text-lg text-white mb-4 md:mb-8">
|
||||
{slide.subline}
|
||||
</span>
|
||||
</f:if>
|
||||
<f:if condition="{slide.button}">
|
||||
<f:link.typolink parameter="{slide.page_uid}"
|
||||
additionalAttributes="{'tabindex': '-1'}"
|
||||
class="button bg-badge-gradient hover:bg-none hover:bg-ep-pink text-white inline-block">
|
||||
{slide.button}
|
||||
</f:link.typolink>
|
||||
</f:if>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<f:if condition="{slide.skipass} || {badge}">
|
||||
<div class="herounit__badge-wrapper">
|
||||
<f:if condition="{slide.skipass}">
|
||||
<f:link.typolink parameter="{settings.skipassPageUid}"
|
||||
additionalAttributes="{'tabindex': '-1'}">
|
||||
<div class="herounit__badge herounit__badge--skipass">
|
||||
<div class="uppercase text-4xl font-bold leading-7 mb-2">Ski-<br>Pass</div>
|
||||
<div class="uppercase">inklusive</div>
|
||||
</div>
|
||||
</f:link.typolink>
|
||||
</f:if>
|
||||
<f:if condition="{badge}">
|
||||
<f:alias map="{badgeData: badge.0.data}">
|
||||
<f:link.typolink parameter="{badgeData.link}"
|
||||
additionalAttributes="{'tabindex': '-1'}">
|
||||
<div class="herounit__badge herounit__badge--custom">
|
||||
<svg viewBox="0 0 200 200"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
preserveAspectRatio="xMinYMin meet"
|
||||
class="w-full h-full">
|
||||
<circle fill="currentColor" class="text-ep-primary-dark/50" cx="100" cy="100" r="100"/>
|
||||
<circle fill="currentColor" class="text-ep-primary-dark" cx="100" cy="100" r="70"/>
|
||||
</svg>
|
||||
<div class="absolute top-0 left-0 inset-0 flex flex-col items-center justify-center p-8">
|
||||
<span class="block text-center text-white bg-ep-primary-dark uppercase font-bold leading-none text-xl">{badgeData.title -> f:format.raw()}</span>
|
||||
<f:if condition="{badgeData.subtitle}">
|
||||
<span class="block text-center text-white bg-ep-primary-dark uppercase font-bold leading-none">{badgeData.subtitle -> f:format.raw()}</span>
|
||||
</f:if>
|
||||
</div>
|
||||
</div>
|
||||
</f:link.typolink>
|
||||
</f:alias>
|
||||
</f:if>
|
||||
</div>
|
||||
</f:if>
|
||||
</div>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,11 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Page/Frontpage"/>
|
||||
|
||||
<f:section name="Content">
|
||||
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="{pageUid: '{data.uid}', colPos: '0'}" />
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,11 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Page/FrontpageEvent"/>
|
||||
|
||||
<f:section name="Content">
|
||||
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="{pageUid: '{data.uid}', colPos: '0'}" />
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,11 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Page/Popup"/>
|
||||
|
||||
<f:section name="Content">
|
||||
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="{pageUid: '{data.uid}', colPos: '0'}" />
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
Reference in new issue
Block a user