WIP Migrate all teaser sliders to splide
This commit is contained in:
@@ -22,7 +22,6 @@
|
||||
"league/csv": "^9.2",
|
||||
"league/period": "^4.9",
|
||||
"lochmueller/staticfilecache": "^10.2",
|
||||
"pixelant/pxa-social-feed": "^2.0",
|
||||
"ssch/typo3-encore": "^2.0",
|
||||
"symfony/http-client": "^4.3",
|
||||
"symfony/options-resolver": "^4.2",
|
||||
|
||||
Generated
+1
-121
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "bdb0e8fc25a5e98d75bea5bce07ec0bd",
|
||||
"content-hash": "eca3ebc095a3587edf9bd8d7011159e2",
|
||||
"packages": [
|
||||
{
|
||||
"name": "christophlehmann/imageoptimizer",
|
||||
@@ -631,68 +631,6 @@
|
||||
],
|
||||
"time": "2020-05-25T17:44:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "facebook/graph-sdk",
|
||||
"version": "5.7.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/facebook/php-graph-sdk.git",
|
||||
"reference": "2d8250638b33d73e7a87add65f47fabf91f8ad9b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/facebook/php-graph-sdk/zipball/2d8250638b33d73e7a87add65f47fabf91f8ad9b",
|
||||
"reference": "2d8250638b33d73e7a87add65f47fabf91f8ad9b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^5.4|^7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"guzzlehttp/guzzle": "~5.0",
|
||||
"mockery/mockery": "~0.8",
|
||||
"phpunit/phpunit": "~4.0"
|
||||
},
|
||||
"suggest": {
|
||||
"guzzlehttp/guzzle": "Allows for implementation of the Guzzle HTTP client",
|
||||
"paragonie/random_compat": "Provides a better CSPRNG option in PHP 5"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "5.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Facebook\\": "src/Facebook/"
|
||||
},
|
||||
"files": [
|
||||
"src/Facebook/polyfills.php"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"Facebook Platform"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Facebook",
|
||||
"homepage": "https://github.com/facebook/php-graph-sdk/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Facebook SDK for PHP",
|
||||
"homepage": "https://github.com/facebook/php-graph-sdk",
|
||||
"keywords": [
|
||||
"facebook",
|
||||
"sdk"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/facebook/php-graph-sdk/issues",
|
||||
"source": "https://github.com/facebook/php-graph-sdk/tree/5.7.0"
|
||||
},
|
||||
"time": "2018-12-11T22:56:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "fluidtypo3/vhs",
|
||||
"version": "5.2.0",
|
||||
@@ -1683,64 +1621,6 @@
|
||||
},
|
||||
"time": "2021-07-03T13:36:55+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pixelant/pxa-social-feed",
|
||||
"version": "v2.3.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/pixelant/pxa_social_feed.git",
|
||||
"reference": "dfabd173eee203b575f28aab98181be3556e05b0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/pixelant/pxa_social_feed/zipball/dfabd173eee203b575f28aab98181be3556e05b0",
|
||||
"reference": "dfabd173eee203b575f28aab98181be3556e05b0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"facebook/graph-sdk": "~5.7.0",
|
||||
"php": ">=7.1",
|
||||
"typo3/cms-core": "^8.7 || ^9.5"
|
||||
},
|
||||
"require-dev": {
|
||||
"nimut/testing-framework": "^4.1",
|
||||
"squizlabs/php_codesniffer": "^3.4"
|
||||
},
|
||||
"type": "typo3-cms-extension",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "0.0.x-dev"
|
||||
},
|
||||
"typo3/cms": {
|
||||
"extension-key": "pxa_social_feed",
|
||||
"cms-package-dir": "{$vendor-dir}/typo3/cms",
|
||||
"web-dir": ".Build/Web"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Pixelant\\PxaSocialFeed\\": "Classes/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"GPL-2.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Pixelant",
|
||||
"email": "[email protected]",
|
||||
"homepage": "https://www.pixelant.net",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "Add Facebook, Instagram, and Twitter feeds to your site.",
|
||||
"support": {
|
||||
"issues": "https://github.com/pixelant/pxa_social_feed/issues",
|
||||
"source": "https://github.com/pixelant/pxa_social_feed/tree/v2.3.1"
|
||||
},
|
||||
"time": "2020-04-06T06:54:44+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/cache",
|
||||
"version": "1.0.1",
|
||||
|
||||
@@ -66,6 +66,8 @@ class CityController extends ActionController
|
||||
$regionUid = $this->settings['regionUid'];
|
||||
$season = $this->settings['season'];
|
||||
$cities = $this->cityRepository->getTeasersByRegionAndSeason($regionUid, $season);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('teasers', $cities);
|
||||
}
|
||||
|
||||
|
||||
@@ -129,6 +129,8 @@ class HotelController extends ActionController
|
||||
$bookable = $this->hotelDataService->getTeasersByCriteria($criteria);
|
||||
$bookableHotelUids = array_keys($bookable);
|
||||
$nonBookable = $this->hotelDataService->getDateIndependentTeasersByCriteria($criteria, $bookableHotelUids);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('bookable', $bookable);
|
||||
$this->view->assign('nonBookable', $nonBookable);
|
||||
}
|
||||
@@ -143,6 +145,8 @@ class HotelController extends ActionController
|
||||
'type' => (int) $this->settings['type'],
|
||||
];
|
||||
$hotels = $this->hotelDataService->getDateIndependentTeasersByCriteria($criteria);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('teasers', $hotels);
|
||||
}
|
||||
|
||||
|
||||
@@ -102,6 +102,8 @@ class MapController extends ActionController
|
||||
}
|
||||
}
|
||||
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('markerData', json_encode($markerData));
|
||||
}
|
||||
|
||||
|
||||
@@ -210,6 +210,8 @@ class ProductController extends ActionController
|
||||
$teasers = $this->productDataService->getTeasergroup($filterSettings, $excludedConceptUids, $limit);
|
||||
$dateFrom = $this->settings['dateFrom'] ? date('Y-m-d', $this->settings['dateFrom']) : null;
|
||||
$dateTo = $this->settings['dateTo'] ? date('Y-m-d', $this->settings['dateTo']) : null;
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('teasers', $teasers);
|
||||
$this->view->assign('dateAuto', $dateAuto);
|
||||
$this->view->assign('filterSettings', $filterSettings);
|
||||
|
||||
@@ -87,6 +87,8 @@ class RegionController extends ActionController
|
||||
$countryUid = $this->settings['countryUid'];
|
||||
$season = $this->settings['season'];
|
||||
$regions = $this->regionRepository->getTeasersByCountryAndSeason($countryUid, $season);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('teasers', $regions);
|
||||
}
|
||||
|
||||
|
||||
@@ -52,7 +52,9 @@ class SnowreportController extends ActionController
|
||||
{
|
||||
$regionUids = GeneralUtility::trimExplode(',', $this->settings['regionUids'], true);
|
||||
$list = $this->snowreportRepository->getSnowreportsForRegions($regionUids);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('list', $list);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,6 +34,8 @@ class WatchlistController extends ActionController
|
||||
|
||||
public function listAction()
|
||||
{
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
$this->view->assign('data', $data);
|
||||
$this->view->assign('referringPageUid', $GLOBALS['TSFE']->id);
|
||||
}
|
||||
|
||||
|
||||
+2
-3
@@ -7,10 +7,9 @@ export default class extends Controller {
|
||||
|
||||
connect() {
|
||||
useDebounce(this)
|
||||
const handler = this.debounce(() => {
|
||||
window.addEventListener('scroll', this.debounce(() => {
|
||||
this.showValue = window.scrollY > window.innerHeight/3
|
||||
}, 250)
|
||||
window.addEventListener('scroll', handler, { passive: true })
|
||||
}, 250))
|
||||
}
|
||||
|
||||
scroll(e) {
|
||||
|
||||
+63
-13
@@ -4,7 +4,7 @@ import Splide from '@splidejs/splide'
|
||||
export default class extends Controller {
|
||||
|
||||
static classes = [ 'pagination' ]
|
||||
static values = { preset: String }
|
||||
static values = { preset: String, arrows: Boolean, dots: Boolean }
|
||||
|
||||
connect() {
|
||||
const classes = {
|
||||
@@ -16,8 +16,12 @@ export default class extends Controller {
|
||||
}
|
||||
|
||||
let options = {
|
||||
perMove: 1,
|
||||
gap: '1rem',
|
||||
pauseOnHover: false,
|
||||
pauseOnFocus: false,
|
||||
pagination: this.dotsValue,
|
||||
arrows: this.arrowsValue,
|
||||
classes
|
||||
}
|
||||
|
||||
@@ -25,33 +29,79 @@ export default class extends Controller {
|
||||
case 'header-detail':
|
||||
options = {
|
||||
...options,
|
||||
perPage: 1,
|
||||
rewind: true,
|
||||
}
|
||||
break;
|
||||
case 'teasers':
|
||||
options = {
|
||||
...options,
|
||||
perPage: 3,
|
||||
perMove: 1,
|
||||
pagination: false,
|
||||
gap: '1rem',
|
||||
perPage: 4,
|
||||
padding: {
|
||||
right: '2rem',
|
||||
},
|
||||
breakpoints: {
|
||||
1200: {
|
||||
perPage: 3,
|
||||
perPage: 4,
|
||||
padding: {
|
||||
right: '2rem',
|
||||
},
|
||||
},
|
||||
992: {
|
||||
perPage: 2.75,
|
||||
1024: {
|
||||
perPage: 3,
|
||||
padding: {
|
||||
right: '2rem',
|
||||
},
|
||||
},
|
||||
960: {
|
||||
perPage: 2,
|
||||
padding: {
|
||||
right: '2rem',
|
||||
},
|
||||
},
|
||||
640: {
|
||||
perPage: 2.5,
|
||||
},
|
||||
384: {
|
||||
perPage: 1.75,
|
||||
perPage: 1,
|
||||
padding: {
|
||||
right: '2rem',
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'teasers_embedded':
|
||||
options = {
|
||||
...options,
|
||||
perPage: 2,
|
||||
padding: {
|
||||
right: '25%',
|
||||
},
|
||||
breakpoints: {
|
||||
960: {
|
||||
perPage: 3,
|
||||
padding: {
|
||||
right: '10%',
|
||||
},
|
||||
},
|
||||
768: {
|
||||
perPage: 2,
|
||||
padding: {
|
||||
right: '25%',
|
||||
},
|
||||
},
|
||||
640: {
|
||||
perPage: 2,
|
||||
padding: {
|
||||
right: '10%',
|
||||
},
|
||||
},
|
||||
512: {
|
||||
perPage: 1,
|
||||
padding: {
|
||||
right: '10%',
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
}
|
||||
|
||||
|
||||
@@ -120,11 +120,11 @@
|
||||
}
|
||||
}
|
||||
|
||||
.splide__arrows {
|
||||
@include mq($until: desktop) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
//.splide__arrows {
|
||||
// @include mq($until: desktop) {
|
||||
// display: none;
|
||||
// }
|
||||
//}
|
||||
|
||||
.slider-pagination__arrow {
|
||||
border: none;
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:if condition="{data.header}">
|
||||
<f:if condition="{data.header_layout} != 100">
|
||||
<ep:container data="{data}">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<f:render partial="Header/Header" arguments="{header: data.header, subheader: data.subheader, layout: data.header_layout, link: data.header_link, default: settings.defaultHeaderType}" />
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</f:if>
|
||||
</f:if>
|
||||
|
||||
</html>
|
||||
@@ -10,13 +10,15 @@
|
||||
<f:if condition="{teasers}">
|
||||
<f:then>
|
||||
<a id="teasers" class="anchor"></a>
|
||||
<div class="slider slider--teasers in-column">
|
||||
<div class="row slider__items">
|
||||
<f:for each="{teasers}" as="teaser">
|
||||
<div class="col-md-4">
|
||||
<f:render partial="Product/Teaser" section="Teaser" arguments="{teaser: teaser}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<div class="splide" data-controller="slider" data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{teasers}" as="teaser">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Product/Teaser" section="Teaser" arguments="{teaser: teaser}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<f:if condition="{settings.showMoreLink}">
|
||||
|
||||
+32
-31
@@ -2,37 +2,38 @@
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
|
||||
data-namespace-typo3-fluid="true">
|
||||
|
||||
<:variable.set name="images" value="{media -> v:iterator.filter(propertyName: 'showinpreview', filter: 0)}"/>
|
||||
<f:if condition="{images}">
|
||||
<div data-controller="slider"
|
||||
data-splide='{"perPage": 1, "rewind": true}'
|
||||
data-slider-pagination-class="slider-pagination"
|
||||
class="splide slider slider--content">
|
||||
<div id="carousel-{id}" class="splide__track slider__items">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{images}" as="image" iteration="iteration">
|
||||
<li class="splide__slide">
|
||||
<f:link.typolink parameter="{image.originalResource.link}" class="slider__item">
|
||||
<img src="{f:uri.image(image: image, width: '770', height: '430c+100')}"
|
||||
class="slider__image" alt="{image.alternative}" title="{image.title}">
|
||||
</f:link.typolink>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
<f:if condition="{images -> f:count()} > 1">
|
||||
<div class="slider__thumbs hidden-sm hidden-xs">
|
||||
<f:for each="{images}" as="image" iteration="iteration">
|
||||
<f:if condition="{iteration.cycle} <= 5">
|
||||
<a href="#" class="slider__thumb" data-slide="{iteration.index}">
|
||||
<img src="{f:uri.image(image: image, width: '150', height: '85c+100')}"
|
||||
class="img-responsive" alt="{image.alternative}" title="{image.title}">
|
||||
</a>
|
||||
</f:if>
|
||||
</f:for>
|
||||
<f:alias map="{images: '{media -> v:iterator.filter(propertyName: \'showinpreview\', filter: 0)}'}">
|
||||
<f:if condition="{images}">
|
||||
<div data-controller="slider"
|
||||
data-splide='{"perPage": 1, "rewind": true}'
|
||||
data-slider-pagination-class="slider-pagination"
|
||||
class="splide slider slider--content">
|
||||
<div id="carousel-{id}" class="splide__track slider__items">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{images}" as="image" iteration="iteration">
|
||||
<li class="splide__slide">
|
||||
<f:link.typolink parameter="{image.originalResource.link}" class="slider__item">
|
||||
<img src="{f:uri.image(image: image, width: '770', height: '430c+100')}"
|
||||
class="slider__image" alt="{image.alternative}" title="{image.title}">
|
||||
</f:link.typolink>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</f:if>
|
||||
</div>
|
||||
</f:if>
|
||||
<f:if condition="{images -> f:count()} > 1">
|
||||
<div class="slider__thumbs hidden-sm hidden-xs">
|
||||
<f:for each="{images}" as="image" iteration="iteration">
|
||||
<f:if condition="{iteration.cycle} <= 5">
|
||||
<a href="#" class="slider__thumb" data-slide="{iteration.index}">
|
||||
<img src="{f:uri.image(image: image, width: '150', height: '85c+100')}"
|
||||
class="img-responsive" alt="{image.alternative}" title="{image.title}">
|
||||
</a>
|
||||
</f:if>
|
||||
</f:for>
|
||||
</div>
|
||||
</f:if>
|
||||
</div>
|
||||
</f:if>
|
||||
</f:alias>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -18,13 +18,17 @@
|
||||
{region.skiArea -> f:format.html()}
|
||||
<f:if condition="{teasers}">
|
||||
<a id="teasers" class="anchor"></a>
|
||||
<div class="slider slider--teasers in-column">
|
||||
<div class="row slider__items">
|
||||
<f:for each="{teasers}" as="teaser">
|
||||
<div class="col-md-4">
|
||||
<f:render partial="Product/Teaser" section="Teaser" arguments="{teaser: teaser}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<div class="splide"
|
||||
data-controller="slider"
|
||||
data-slider-preset-value="teasers_embedded">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{teasers}" as="teaser">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Product/Teaser" section="Teaser" arguments="{teaser: teaser}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<f:if condition="{settings.showMoreLink}">
|
||||
|
||||
-42
@@ -1,42 +0,0 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
|
||||
xmlns:pxa="http://typo3.org/ns/Pixelant/PxaSocialFeed/ViewHelpers"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers"
|
||||
data-namespace-typo3-fluid="true">
|
||||
|
||||
<ep:container data="{data}" cssClasses="slider slider--teasers">
|
||||
<div class="row slider__items">
|
||||
<f:for each="{feeds}" as="feed">
|
||||
<f:if condition="{feed.image} and {feed.message}">
|
||||
<div class="col-md-3">
|
||||
<div class="teaserbox teaserbox--social">
|
||||
<f:link.typolink parameter="{feed.postUrl}" target="_blank" title="{feed.title}">
|
||||
<div class="teaserbox__image teaserbox__image--social-media lazyload" data-bg="{feed.image}">
|
||||
<f:switch expression="{feed.configuration.token.socialType}">
|
||||
<f:case value="1">
|
||||
<div class="teaserbox__icon">
|
||||
<i class="fa fa-facebook"></i>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:case value="2">
|
||||
<div class="teaserbox__icon">
|
||||
<i class="fa fa-instagram"></i>
|
||||
</div>
|
||||
</f:case>
|
||||
</f:switch>
|
||||
</div>
|
||||
</f:link.typolink>
|
||||
<div class="teaserbox__main teaserbox__main--fixed-height">
|
||||
<p>{feed.postDate -> f:format.date(format: 'd.m.Y')} @{feed.configuration.name}</p>
|
||||
<f:format.raw>{feed.decodedMessage -> f:format.crop(maxCharacters: '120') -> pxa:parseMessage(type: feed.configuration.token.type) -> f:format.nl2br()}</f:format.raw>
|
||||
</div>
|
||||
<f:link.typolink parameter="{feed.postUrl}" target="_blank" title="{feed.title}">
|
||||
<button class="button button--full teaserbox__button">{f:translate(key: 'tx_eptheme.label.teaserbutton.to_post', extensionName: 'ep_theme')}</button>
|
||||
</f:link.typolink>
|
||||
</div>
|
||||
</div>
|
||||
</f:if>
|
||||
</f:for>
|
||||
</div>
|
||||
</ep:container>
|
||||
|
||||
</html>
|
||||
@@ -1,17 +1,27 @@
|
||||
<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"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers">
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:for each="{teasers}" as="city">
|
||||
<div class="col-md-3">
|
||||
<f:render partial="City/Teaser" section="Teaser" arguments="{_all}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<f:render partial="Header/Standalone" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<div class="splide" data-controller="slider" data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{teasers}" as="city">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="City/Teaser" section="Teaser" arguments="{_all}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,17 +1,26 @@
|
||||
<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"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers">
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:for each="{teasers}" as="concept">
|
||||
<div class="col-md-3">
|
||||
<f:render partial="Concept/Teaser" section="Teaser" arguments="{_all}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<div class="splide" data-controller="slider" data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{teasers}" as="concept">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Concept/Teaser" section="Teaser" arguments="{_all}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -30,7 +30,8 @@
|
||||
<f:if condition="{teasers}">
|
||||
<a id="teasers" class="anchor"></a>
|
||||
<div data-controller="slider"
|
||||
data-slider-preset-value="teasers"
|
||||
data-slider-preset-value="teasers_embedded"
|
||||
data-slider-arrows-value="true"
|
||||
class="splide slider slider--teasers in-column">
|
||||
<div class="splide__track slider__items">
|
||||
<ul class="splide__list">
|
||||
|
||||
-136
@@ -1,136 +0,0 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:switch expression="{data.list_type}">
|
||||
<f:comment>Plugin watchlist</f:comment>
|
||||
<f:case value="epproducts_watchlist">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<ep:container data="{data}">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</ep:container>
|
||||
</f:case>
|
||||
<f:comment>Plugin snowreport</f:comment>
|
||||
<f:case value="epproducts_snowreport_list">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</f:case>
|
||||
<f:comment>Plugin product teasergroup</f:comment>
|
||||
<f:case value="epproducts_product_teasergroup">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<f:if condition="{data.flexForm.settings.layout} == 'cols'">
|
||||
<f:then>
|
||||
<div data-controller="slider" data-slider-preset-value="teasers" class="splide slider slider--teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</f:else>
|
||||
</f:if>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:comment>Plugin region teasergroup</f:comment>
|
||||
<f:case value="epproducts_region_teasergroup">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}" cssClasses="slider slider--teasers">
|
||||
<div class="row slider__items">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:comment>Plugin city teasergroup</f:comment>
|
||||
<f:case value="epproducts_city_teasergroup">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}" cssClasses="slider slider--teasers">
|
||||
<div class="row slider__items">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:comment>Plugin concept teasergroup</f:comment>
|
||||
<f:case value="epproducts_concept_teasergroup">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}" cssClasses="concept slider slider--teasers">
|
||||
<div class="row slider__items">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:comment>Plugin hotel teasergroup</f:comment>
|
||||
<f:case value="epproducts_hotel_teasergroup">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}" cssClasses="slider slider--teasers">
|
||||
<div class="row slider__items">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:case value="epproducts_hotel_teasergroup_nodate">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}" cssClasses="slider slider--teasers">
|
||||
<div class="row slider__items">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:comment>Social Media Plugin</f:comment>
|
||||
<f:case value="pxasocialfeed_showfeed">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:case>
|
||||
<f:comment>Google maps Plugin</f:comment>
|
||||
<f:case value="epproducts_maps">
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<ep:container data="{data}">
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</ep:container>
|
||||
</f:case>
|
||||
<f:comment>Default</f:comment>
|
||||
<f:defaultCase>
|
||||
<f:render section="Header" arguments="{_all}"/>
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</f:defaultCase>
|
||||
</f:switch>
|
||||
</f:section>
|
||||
|
||||
<f:section name="Header">
|
||||
<f:if condition="{data.header_layout} != 100">
|
||||
<f:if condition="{data.header}">
|
||||
<ep:container data="{data}">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<f:render partial="Header/Header" arguments="{header: data.header, subheader: data.subheader, layout: data.header_layout, link: data.header_link, default: settings.defaultHeaderType}" />
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</f:if>
|
||||
</f:if>
|
||||
</f:section>
|
||||
</html>
|
||||
+19
-6
@@ -1,14 +1,27 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:for each="{teasers}" as="hotel">
|
||||
<div class="col-md-3">
|
||||
<f:render partial="Hotel/TeaserSimple" section="Teaser" arguments="{_all}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<div class="splide"
|
||||
data-controller="slider"
|
||||
data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{teasers}" as="hotel">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Hotel/TeaserSimple" section="Teaser" arguments="{_all}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,21 +1,32 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers">
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:for each="{bookable}" as="hotel">
|
||||
<div class="col-md-3">
|
||||
<f:render partial="Hotel/TeaserExtended" section="Teaser" arguments="{_all}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<f:for each="{nonBookable}" as="hotel">
|
||||
<div class="col-md-3">
|
||||
<f:render partial="Hotel/TeaserSimple" section="Teaser" arguments="{_all}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<div class="splide"
|
||||
data-controller="slider"
|
||||
data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{bookable}" as="hotel">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Hotel/TeaserExtended" section="Teaser" arguments="{_all}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
<f:for each="{nonBookable}" as="hotel">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Hotel/TeaserSimple" section="Teaser" arguments="{_all}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<osm-map :markers="{markerData}" :zoom="17"></osm-map>
|
||||
<ep:container data="{data}">
|
||||
<osm-map :markers="{markerData}" :zoom="17"></osm-map>
|
||||
</ep:container>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -7,6 +7,39 @@
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:render partial="Header/Standalone" arguments="{_all}"/>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<f:if condition="{data.flexForm.settings.layout} == 'cols'">
|
||||
<f:then>
|
||||
<div class="splide"
|
||||
data-controller="slider"
|
||||
data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:render section="Teasers" arguments="{_all}"/>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:render section="Teasers" arguments="{_all}"/>
|
||||
</f:else>
|
||||
</f:if>
|
||||
<f:if condition="{settings.showMoreLink}">
|
||||
<p class="text-right">
|
||||
<f:link.action pageUid="{settings.defaultStaticSearchPageUid}" class="button"
|
||||
action="staticresult" controller="Search"
|
||||
arguments="{encodedFilterSettings: '{filterSettings -> ep:filterSettingsEncoder()}'}">
|
||||
Alle anzeigen
|
||||
</f:link.action>
|
||||
</p>
|
||||
</f:if>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
<f:section name="Teasers">
|
||||
<f:if condition="{teasers}">
|
||||
<f:for each="{teasers}" as="teaser">
|
||||
<f:if condition="{settings.layout} == 'rows'">
|
||||
@@ -20,15 +53,6 @@
|
||||
</f:else>
|
||||
</f:if>
|
||||
</f:for>
|
||||
<f:if condition="{settings.showMoreLink}">
|
||||
<p class="text-right">
|
||||
<f:link.action pageUid="{settings.defaultStaticSearchPageUid}" class="button"
|
||||
action="staticresult" controller="Search"
|
||||
arguments="{encodedFilterSettings: '{filterSettings -> ep:filterSettingsEncoder()}'}">
|
||||
Alle anzeigen
|
||||
</f:link.action>
|
||||
</p>
|
||||
</f:if>
|
||||
</f:if>
|
||||
</f:section>
|
||||
|
||||
|
||||
@@ -1,17 +1,28 @@
|
||||
<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"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers">
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
<f:for each="{teasers}" as="region">
|
||||
<div class="col-md-3">
|
||||
<f:render partial="Region/Teaser" section="Teaser" arguments="{_all}"/>
|
||||
</div>
|
||||
</f:for>
|
||||
<div>
|
||||
<ep:container data="{data}">
|
||||
<div class="splide"
|
||||
data-controller="slider"
|
||||
data-slider-preset-value="teasers">
|
||||
<div class="splide__track">
|
||||
<ul class="splide__list">
|
||||
<f:for each="{teasers}" as="region">
|
||||
<li class="splide__slide">
|
||||
<f:render partial="Region/Teaser" section="Teaser" arguments="{_all}"/>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ep:container>
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
|
||||
xmlns:pxa="http://typo3.org/ns/Pixelant/PxaSocialFeed/ViewHelpers"
|
||||
xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="main">
|
||||
<f:render partial="Frontend/FeedsItems" arguments="{_all}"/>
|
||||
</f:section>
|
||||
</div>
|
||||
-20
@@ -1,20 +0,0 @@
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
|
||||
xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="main">
|
||||
<div data-social-feed data-uri="{f:render(section: 'uri') -> f:spaceless()}">
|
||||
<f:image src="EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif" alt="Loading..." />
|
||||
</div>
|
||||
</f:section>
|
||||
|
||||
<f:section name="uri">
|
||||
<f:uri.action action="loadFeedAjax"
|
||||
pageType="7378121"
|
||||
absolute="1"
|
||||
pageUid="{settings.defaultAjaxUid}"
|
||||
arguments="{configuration: settings.configuration, feedsLimit: settings.feedsLimit, partial: settings.partial, presentation: settings.presentation}"
|
||||
/>
|
||||
</f:section>
|
||||
</div>
|
||||
-9
@@ -1,9 +0,0 @@
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
|
||||
xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">
|
||||
|
||||
<f:layout name="Empty"/>
|
||||
|
||||
<f:section name="main">
|
||||
<f:render partial="Frontend/FeedsItems" arguments="{feeds: feeds}" />
|
||||
</f:section>
|
||||
</div>
|
||||
@@ -5,10 +5,11 @@
|
||||
<f:layout name="Default"/>
|
||||
|
||||
<f:section name="Main">
|
||||
|
||||
<watchlist loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
referring-page-url="{f:uri.typolink(parameter: referringPageUid)}"
|
||||
watchlist-uri="{ep:uri.ajax(action: 'list', controller: 'AjaxWatchlist', pageUid: settings.defaultAjaxUid)}"></watchlist>
|
||||
<ep:container data="{data}">
|
||||
<watchlist loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
referring-page-url="{f:uri.typolink(parameter: referringPageUid)}"
|
||||
watchlist-uri="{ep:uri.ajax(action: 'list', controller: 'AjaxWatchlist', pageUid: settings.defaultAjaxUid)}"></watchlist>
|
||||
</ep:container>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user