Update to TYPO3 8.7 LTS
This commit is contained in:
@@ -1,25 +0,0 @@
|
||||
table {
|
||||
border: 1px solid #ccc;
|
||||
border-collapse: collapse;
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
a.button {
|
||||
border: 1px solid #999;
|
||||
padding: 0.25em;
|
||||
}
|
||||
|
||||
a.button--full {
|
||||
border: 1px solid #999;
|
||||
padding: 0.25em;
|
||||
display: block;
|
||||
width: 95%;
|
||||
}
|
||||
|
||||
td, th {
|
||||
border: 1px solid #ccc;
|
||||
border-collapse: collapse;
|
||||
vertical-align: top;
|
||||
text-align: left;
|
||||
padding: 3px;
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 19.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Ebene_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
|
||||
<rect x="1" y="3" fill="#CCCCCC" width="14" height="10"/>
|
||||
<path fill="#999999" d="M14,4v8H2V4H14 M15,3H1v10h14V3L15,3z"/>
|
||||
<rect x="3" y="2" fill="#FFFFFF" width="10" height="12"/>
|
||||
<path fill="#666666" d="M12,3v10H4V3H12 M13,2H3v12h10V2L13,2z"/>
|
||||
<rect x="5" y="7" fill="#CCCCCC" width="6" height="1"/>
|
||||
<rect x="5" y="9" fill="#CCCCCC" width="6" height="1"/>
|
||||
<rect x="5" y="11" fill="#CCCCCC" width="6" height="1"/>
|
||||
<rect x="5" y="4" fill="#666666" width="6" height="2"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 815 B |
@@ -1,6 +1,7 @@
|
||||
'use strict';
|
||||
|
||||
// Require images
|
||||
require('../images/bg_login.jpg');
|
||||
require('../images/logo.svg');
|
||||
require('../images/logo_wide.svg');
|
||||
require('../images/favicon_ep.ico');
|
||||
@@ -12,6 +13,9 @@ require('../images/gb.png');
|
||||
require('../images/badge_skipass.png');
|
||||
require('../images/polygon.jpg');
|
||||
|
||||
require('../images/icons/icon_ce.svg');
|
||||
require('../images/icons/tx_eptheme_domain_model_lineup.gif');
|
||||
require('../images/icons/tx_eptheme_domain_model_slide.gif');
|
||||
require('../images/icons/tx_eptheme_gridelements_half_and_two_quarters.png');
|
||||
require('../images/icons/tx_eptheme_gridelements_halves.png');
|
||||
require('../images/icons/tx_eptheme_gridelements_quarters.png');
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
$output-bourbon-deprecation-warnings: false;
|
||||
@import "~bourbon/app/assets/stylesheets/bourbon";
|
||||
|
||||
@include font-face('Lato', '../fonts/lato-v14-latin-300', 300);
|
||||
@include font-face('Lato', '../fonts/lato-v14-latin-regular', 400);
|
||||
@include font-face('Lato', '../fonts/lato-v14-latin-700', 700);
|
||||
@include font-face('Lato', '../fonts/lato-v14-latin-900', 900);
|
||||
|
||||
body {
|
||||
font-family: "Lato", $helvetica;
|
||||
font-size: 16px;
|
||||
line-height: 26px;
|
||||
}
|
||||
|
||||
table {
|
||||
border: 1px solid #ccc;
|
||||
border-collapse: collapse;
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
a.button {
|
||||
border: 1px solid #999;
|
||||
padding: 0.25em;
|
||||
}
|
||||
|
||||
a.button--full {
|
||||
border: 1px solid #999;
|
||||
padding: 0.25em;
|
||||
display: block;
|
||||
width: 95%;
|
||||
}
|
||||
|
||||
td, th {
|
||||
border: 1px solid #ccc;
|
||||
border-collapse: collapse;
|
||||
vertical-align: top;
|
||||
text-align: left;
|
||||
padding: 3px;
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
|
||||
xmlns:ce="http://typo3.org/ns/TYPO3/CMS/FluidStyledContent/ViewHelpers"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<v:menu.list pages="{pageUids}" useShortcutUid="true">
|
||||
<ul class="list-unstyled">
|
||||
<f:for each="{menu}" as="page">
|
||||
<li>
|
||||
<f:link.page pageUid="{page.uid}" class="btn btn-warning ep-sidebar{f:if(condition: '{page.active}', then: ' active')}">{page.title}</f:link.page>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</v:menu.list>
|
||||
|
||||
</html>
|
||||
@@ -1,17 +0,0 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
|
||||
xmlns:ce="http://typo3.org/ns/TYPO3/CMS/FluidStyledContent/ViewHelpers"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
|
||||
|
||||
<v:menu pageUid="{pageUids -> v:iterator.first()}" useShortcutUid="true">
|
||||
<ul class="list-unstyled">
|
||||
<f:for each="{menu}" as="page">
|
||||
<li>
|
||||
<f:link.page pageUid="{page.uid}" class="btn btn-warning ep-sidebar{f:if(condition: '{page.active}', then: ' active')}">{page.title}</f:link.page>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</v:menu>
|
||||
|
||||
</html>
|
||||
+1
-1
@@ -9,7 +9,7 @@
|
||||
<f:section name="Content">
|
||||
<div class="container">
|
||||
<calendar
|
||||
uri="{ep:uri.ajax(action: 'range', controller: 'AjaxCalendar', extensionName: 'epproducts', arguments: '{hotel: data.tx_eptheme_context_hotel}', noCacheHash: 1, format: 'html')}"
|
||||
uri="{ep:uri.ajax(action: 'range', controller: 'AjaxCalendar', extensionName: 'epproducts', pageUid: settings.defaultAjaxUid, arguments: '{hotel: data.tx_eptheme_context_hotel}', noCacheHash: 1, format: 'html')}"
|
||||
loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
hotel-uid="{hotel.0.data.uid}"
|
||||
hotel-name="{hotel.0.data.name}"
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@
|
||||
|
||||
<f:section name="Content">
|
||||
<event-pricetable
|
||||
uri="{ep:uri.ajax(extensionName: 'epproducts', action: 'eventPricetable', controller: 'AjaxTable', arguments: '{product: data.tx_eptheme_context_product}', format: 'html')}"
|
||||
uri="{ep:uri.ajax(extensionName: 'epproducts', action: 'eventPricetable', controller: 'AjaxTable', pageUid: settings.defaultAjaxUid, arguments: '{product: data.tx_eptheme_context_product}', format: 'html')}"
|
||||
loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
:force-partnerid-select="{forcePartnerIdSelect}"
|
||||
:partner-ids='{
|
||||
|
||||
@@ -102,9 +102,9 @@
|
||||
</ep:container>
|
||||
</f:case>
|
||||
<f:comment>Default</f:comment>
|
||||
<f:case default="1">
|
||||
<f:defaultCase>
|
||||
<f:cObject typoscriptObjectPath="tt_content.list.20.{data.list_type}" data="{data}"/>
|
||||
</f:case>
|
||||
</f:defaultCase>
|
||||
</f:switch>
|
||||
</f:section>
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:layout name="Default" />
|
||||
|
||||
<f:section name="Content">
|
||||
<f:render partial="Menu/Type-{data.menu_type}" arguments="{_all}" />
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:layout name="Default" />
|
||||
|
||||
<f:section name="Content">
|
||||
<f:spaceless>
|
||||
<f:if condition="{menu}">
|
||||
<ul class="list-unstyled">
|
||||
<f:for each="{menu}" as="page">
|
||||
<f:if condition="{page.content}">
|
||||
<f:for each="{page.content}" as="element">
|
||||
<f:if condition="{element.data.header}">
|
||||
<li>
|
||||
<a href="{f:uri.page(pageUid: page.uid, section: 'c{element.data.uid}')}"
|
||||
class="btn btn-warning ep-sidebar"
|
||||
v-on:click.prevent="scrollTo('#c{element.data.uid}')">{element.data.header}</a>
|
||||
</li>
|
||||
</f:if>
|
||||
</f:for>
|
||||
</f:if>
|
||||
</f:for>
|
||||
</ul>
|
||||
</f:if>
|
||||
</f:spaceless>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:layout name="Default" />
|
||||
|
||||
<f:section name="Content">
|
||||
|
||||
<f:if condition="{menu}">
|
||||
<ul>
|
||||
<f:for each="{menu}" as="page">
|
||||
<li>
|
||||
<a href="{page.link}"{f:if(condition: page.target, then: ' target="{page.target}"')} title="{page.title}">
|
||||
<span>{page.title}</span>
|
||||
</a>
|
||||
<f:if condition="{page.content}">
|
||||
<ul>
|
||||
<f:for each="{page.content}" as="element">
|
||||
<li>
|
||||
<a href="{page.link}#c{element.data.uid}"{f:if(condition: page.target, then: ' target="{page.target}"')} title="{element.data.header}">
|
||||
<span>{element.data.header}</span>
|
||||
</a>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</f:if>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</f:if>
|
||||
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:layout name="Default" />
|
||||
|
||||
<f:section name="Content">
|
||||
|
||||
<f:if condition="{menu}">
|
||||
<ul class="list-unstyled">
|
||||
<f:for each="{menu}" as="page">
|
||||
<li>
|
||||
<f:link.page pageUid="{page.data.uid}" class="btn btn-warning ep-sidebar{f:if(condition: '{page.active}', then: ' active')}">
|
||||
{page.title}
|
||||
</f:link.page>
|
||||
</li>
|
||||
</f:for>
|
||||
</ul>
|
||||
</f:if>
|
||||
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
+2
-2
@@ -15,9 +15,9 @@
|
||||
<f:case value="3">
|
||||
{v:variable.set(name: 'partial', value: 'Product/TeaserWide')}
|
||||
</f:case>
|
||||
<f:case default="1">
|
||||
<f:defaultCase>
|
||||
{v:variable.set(name: 'partial', value: 'Product/Teaser')}
|
||||
</f:case>
|
||||
</f:defaultCase>
|
||||
</f:switch>
|
||||
<f:render partial="{partial}" section="Teaser" arguments="{teaser: teaser}"/>
|
||||
</f:if>
|
||||
|
||||
+2
-2
@@ -19,11 +19,11 @@
|
||||
<f:case value="5">
|
||||
<f:render partial="Textmedia/Partnerlogos" section="Content" arguments="{_all}"/>
|
||||
</f:case>
|
||||
<f:case default="1">
|
||||
<f:defaultCase>
|
||||
<ep:container data="{data}">
|
||||
<f:render partial="Textmedia/Default" section="Content" arguments="{_all}"/>
|
||||
</ep:container>
|
||||
</f:case>
|
||||
</f:defaultCase>
|
||||
</f:switch>
|
||||
</f:section>
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
<div class="col-xs-12">
|
||||
<h2>Buchungsoptionen</h2>
|
||||
<ajax-content
|
||||
uri="{ep:uri.ajax(action: 'pricetableHtml', controller: 'AjaxTable', arguments: '{product: product, hotel: hotel}', format: 'html')}"
|
||||
uri="{ep:uri.ajax(action: 'pricetableHtml', controller: 'AjaxTable', pageUid: settings.defaultAjaxUid, arguments: '{product: product, hotel: hotel}', format: 'html')}"
|
||||
loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
></ajax-content>
|
||||
</div>
|
||||
|
||||
@@ -35,9 +35,9 @@
|
||||
<f:case value="register_existing">
|
||||
<div class="alert alert-danger">Diese E-Mail-Adresse ist bereits für unseren Newsletter registriert.</div>
|
||||
</f:case>
|
||||
<f:case default="1">
|
||||
<f:defaultCase>
|
||||
<div class="alert alert-danger">Ein Problem ist aufgetreten. Bitte versuche es erneut.</div>
|
||||
</f:case>
|
||||
</f:defaultCase>
|
||||
</f:switch>
|
||||
</f:section>
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
<f:section name="Main">
|
||||
<event-pricetable
|
||||
uri="{ep:uri.ajax(extensionName: 'epproducts', action: 'eventPricetable', controller: 'AjaxTable', arguments: '{product: productUid}', format: 'html')}"
|
||||
uri="{ep:uri.ajax(extensionName: 'epproducts', action: 'eventPricetable', controller: 'AjaxTable', pageUid: settings.defaultAjaxUid, arguments: '{product: productUid}', format: 'html')}"
|
||||
loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
:force-partnerid-select="{settings.forcePartnerIdSelect}"
|
||||
:partner-ids='{settings.partnerIds -> v:format.json.encode()}'
|
||||
|
||||
@@ -13,8 +13,8 @@
|
||||
<product-detail
|
||||
:filter-settings='<v:format.json.encode>{filterSettings}</v:format.json.encode>'
|
||||
:uris='{
|
||||
dates: "<f:format.raw>{ep:uri.ajax(action: 'dates', controller: 'AjaxDate', arguments: '{product: product, hotel: hotel}', format: 'json', noCacheHash: 1)}</f:format.raw>",
|
||||
pricetable: "<f:format.raw>{ep:uri.ajax(action: 'pricetable', controller: 'AjaxTable', arguments: '{product: product, hotel: hotel}', format: 'json', noCacheHash: 1)}</f:format.raw>"
|
||||
dates: "<f:format.raw>{ep:uri.ajax(action: 'dates', controller: 'AjaxDate', pageUid: settings.defaultAjaxUid, arguments: '{product: product, hotel: hotel}', format: 'json')}</f:format.raw>",
|
||||
pricetable: "<f:format.raw>{ep:uri.ajax(action: 'pricetable', controller: 'AjaxTable', pageUid: settings.defaultAjaxUid, arguments: '{product: product, hotel: hotel}', format: 'json')}</f:format.raw>"
|
||||
}'
|
||||
argument-prefix='<ep:argumentPrefix pluginName="Ajax" />'
|
||||
:hotel-first="{f:if(condition: settings.hotelOnTop, then: 'true', else: 'false')}"
|
||||
@@ -34,13 +34,13 @@
|
||||
<f:if condition="{settings.hotelOnTop}">
|
||||
<f:then>
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'hotel'}"
|
||||
v-on:click.prevent="showHtml('hotel')">Unterkunft</button>
|
||||
:class="{ 'button--active': activeSection === 'hotel'}"
|
||||
@click.prevent="showHtml('hotel')">Unterkunft</button>
|
||||
</f:then>
|
||||
<f:else>
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'dates'}"
|
||||
v-on:click.prevent="loadDatesView()">Termine/Preise</button>
|
||||
:class="{ 'button--active': activeSection === 'dates'}"
|
||||
@click.prevent="loadDatesView()">Termine/Preise</button>
|
||||
</f:else>
|
||||
</f:if>
|
||||
</div>
|
||||
@@ -50,27 +50,27 @@
|
||||
<f:if condition="{settings.hotelOnTop}">
|
||||
<f:then>
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'dates'}"
|
||||
v-on:click.prevent="loadDatesView()">Termine/Preise</button>
|
||||
:class="{ 'button--active': activeSection === 'dates'}"
|
||||
@click.prevent="loadDatesView()">Termine/Preise</button>
|
||||
</f:then>
|
||||
<f:else>
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'hotel'}"
|
||||
v-on:click.prevent="showHtml('hotel')">Unterkunft</button>
|
||||
:class="{ 'button--active': activeSection === 'hotel'}"
|
||||
@click.prevent="showHtml('hotel')">Unterkunft</button>
|
||||
</f:else>
|
||||
</f:if>
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'region'}"
|
||||
v-on:click.prevent="showHtml('region')">Gebiet</button>
|
||||
:class="{ 'button--active': activeSection === 'region'}"
|
||||
@click.prevent="showHtml('region')">Gebiet</button>
|
||||
</div>
|
||||
<div class="col-xs-6 col-md-12">
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'city'}"
|
||||
v-on:click.prevent="showHtml('city')">Ort</button>
|
||||
:class="{ 'button--active': activeSection === 'city'}"
|
||||
@click.prevent="showHtml('city')">Ort</button>
|
||||
<f:if condition="{product.journey}">
|
||||
<button class="button button--light button--sidebar"
|
||||
v-bind:class="{ 'button--active': activeSection === 'journey'}"
|
||||
v-on:click.prevent="showHtml('journey')">Anreise</button>
|
||||
:class="{ 'button--active': activeSection === 'journey'}"
|
||||
@click.prevent="showHtml('journey')">Anreise</button>
|
||||
</f:if>
|
||||
</div>
|
||||
<div class="col-xs-12">
|
||||
@@ -226,7 +226,7 @@
|
||||
<div class="ep-sidebar ep-facts">
|
||||
<p><strong>Belegungskalender</strong></p>
|
||||
<calendar
|
||||
uri="{ep:uri.ajax(action: 'range', controller: 'AjaxCalendar', extensionName: 'epproducts', arguments: '{hotel: product.calendarHotel}', noCacheHash: 1, format: 'html')}"
|
||||
uri="{ep:uri.ajax(action: 'range', controller: 'AjaxCalendar', extensionName: 'epproducts', pageUid: settings.defaultAjaxUid, arguments: '{hotel: product.calendarHotel}', noCacheHash: 1, format: 'html')}"
|
||||
loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
hotel-uid="{product.calendarHotel.uid}"
|
||||
hotel-name="{product.calendarHotel.name}"
|
||||
@@ -240,9 +240,3 @@
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
<script>
|
||||
import WatchlistToggle from "../../Assets/js/components/WatchlistToggle";
|
||||
export default {
|
||||
components: {WatchlistToggle}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
<f:section name="Main">
|
||||
<div id="searchbar">
|
||||
<search-bar
|
||||
options-uri='<ep:uri.ajax controller="AjaxSearchbar" action="options" noCacheHash="1" />'
|
||||
reset-uri='<ep:uri.ajax controller="AjaxSearchbar" action="reset" noCacheHash="1" />'
|
||||
options-uri='<ep:uri.ajax controller="AjaxSearchbar" action="options" noCacheHash="1" pageUid="{settings.defaultAjaxUid}" />'
|
||||
reset-uri='<ep:uri.ajax controller="AjaxSearchbar" action="reset" noCacheHash="1" pageUid="{settings.defaultAjaxUid}" />'
|
||||
argument-prefix='<ep:argumentPrefix pluginName="ajax" />'
|
||||
:initial-search-params='<v:format.json.encode>{searchParams}</v:format.json.encode>'
|
||||
:initial-filter-options='<v:format.json.encode>{filterOptions}</v:format.json.encode>'
|
||||
@@ -18,7 +18,7 @@
|
||||
<div class="container searchbar affix{f:if(condition: fixed, else: '-top')}"{f:if(condition: fixed, else: ' data-spy="affix" data-offset-top="650" data-offset-bottom="200"')}>
|
||||
<div class="container">
|
||||
<f:form action="searchresult" controller="Search" method="post" name="searchParams"
|
||||
object="{searchParams}" pluginName="searchresult" extensionName="epproducts" noCacheHash="1"
|
||||
object="{searchParams}" pluginName="searchresult" extensionName="epproducts"
|
||||
pageUid="{settings.defaultSearchPageUid}" additionalAttributes="{ref: 'form'}">
|
||||
<f:form.hidden property="destinationUid" additionalAttributes="{v-model: 'searchParams.destinationUid', number: 'number'}"/>
|
||||
<f:form.hidden property="destinationType" additionalAttributes="{v-model: 'searchParams.destinationType'}"/>
|
||||
@@ -33,7 +33,7 @@
|
||||
<div class="col-sm-3">
|
||||
<daterange-select
|
||||
class="form-group"
|
||||
v-on:selected="updateDateRange"
|
||||
@selected="updateDateRange"
|
||||
:presets="datePresets"
|
||||
:min-date="filterOptions.dateFrom"
|
||||
:max-date="filterOptions.dateTo"
|
||||
@@ -41,7 +41,7 @@
|
||||
</div>
|
||||
<div class="col-sm-1">
|
||||
<pax-select
|
||||
v-on:selected="updatePax"
|
||||
@selected="updatePax"
|
||||
:pax-options="filterOptions.pax"
|
||||
:pax="searchParams.pax"
|
||||
groups-uri="{f:uri.page(pageUid: settings.groupsPageUid)}"
|
||||
@@ -50,15 +50,15 @@
|
||||
<div class="col-sm-4">
|
||||
<destination-select
|
||||
class="form-group"
|
||||
v-on:selected="updateDestination"
|
||||
v-on:reset="resetDestination"
|
||||
@selected="updateDestination"
|
||||
@reset="resetDestination"
|
||||
:destination-options="filterOptions.destinations"
|
||||
:concept-options="filterOptions.concepts"
|
||||
></destination-select>
|
||||
</div>
|
||||
<div class="col-sm-2">
|
||||
<price-range-select
|
||||
v-on:selected="updatePriceRange"
|
||||
@selected="updatePriceRange"
|
||||
:range-options="filterOptions.priceRanges"
|
||||
:range="searchParams.priceRange"
|
||||
></price-range-select>
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
<f:section name="Main">
|
||||
<div id="ep-navbar-searchbox" class="searchbox hidden-lg" v-show="searchBoxVisible" v-cloak>
|
||||
<search-box
|
||||
options-uri='<ep:uri.ajax controller="AjaxSearchbar" action="options" noCacheHash="1" />'
|
||||
reset-uri='<ep:uri.ajax controller="AjaxSearchbar" action="reset" noCacheHash="1" />'
|
||||
options-uri='<ep:uri.ajax controller="AjaxSearchbar" action="options" noCacheHash="1" pageUid="{settings.defaultAjaxUid}" />'
|
||||
reset-uri='<ep:uri.ajax controller="AjaxSearchbar" action="reset" noCacheHash="1" pageUid="{settings.defaultAjaxUid}" />'
|
||||
argument-prefix='<ep:argumentPrefix pluginName="ajax" />'
|
||||
:initial-search-params='<v:format.json.encode>{searchParams}</v:format.json.encode>'
|
||||
:initial-filter-options='<v:format.json.encode>{filterOptions}</v:format.json.encode>'
|
||||
@@ -17,7 +17,7 @@
|
||||
inline-template>
|
||||
<div class="container">
|
||||
<f:form action="searchresult" controller="Search" method="post" name="searchParams"
|
||||
object="{searchParams}" pluginName="searchresult" extensionName="epproducts" noCacheHash="1"
|
||||
object="{searchParams}" pluginName="searchresult" extensionName="epproducts"
|
||||
pageUid="{settings.defaultSearchPageUid}" class="form-horizontal">
|
||||
<f:form.hidden property="destinationUid" additionalAttributes="{v-model: 'searchParams.destinationUid', number: 'number'}"/>
|
||||
<f:form.hidden property="destinationType" additionalAttributes="{v-model: 'searchParams.destinationType'}"/>
|
||||
@@ -33,7 +33,7 @@
|
||||
<label>Früheste Anreise</label>
|
||||
<input
|
||||
type="date"
|
||||
v-on:change="updateOptions"
|
||||
@change="updateOptions"
|
||||
v-model="searchParams.dateFrom"
|
||||
:min="filterOptions.dateFrom"
|
||||
:max="filterOptions.dateTo"
|
||||
@@ -44,7 +44,7 @@
|
||||
<label>Späteste Abreise</label>
|
||||
<input
|
||||
type="date"
|
||||
v-on:change="updateOptions"
|
||||
@change="updateOptions"
|
||||
v-model="searchParams.dateTo"
|
||||
:min="filterOptions.dateFrom"
|
||||
:max="filterOptions.dateTo"
|
||||
@@ -59,7 +59,7 @@
|
||||
<label>Personen</label>
|
||||
<input
|
||||
type="number"
|
||||
v-on:change="updateOptions"
|
||||
@change="updateOptions"
|
||||
min="1"
|
||||
max="20"
|
||||
v-model="searchParams.pax"
|
||||
@@ -72,8 +72,8 @@
|
||||
<div class="col-md-12">
|
||||
<destination-select
|
||||
class="form-group"
|
||||
v-on:selected="updateDestination"
|
||||
v-on:reset="resetDestination"
|
||||
@selected="updateDestination"
|
||||
@reset="resetDestination"
|
||||
:destination-options="filterOptions.destinations"
|
||||
:concept-options="filterOptions.concepts"
|
||||
></destination-select>
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="col-md-12">
|
||||
<price-range-select
|
||||
class="form-group"
|
||||
v-on:selected="updatePriceRange"
|
||||
@selected="updatePriceRange"
|
||||
:range-options="filterOptions.priceRanges"
|
||||
:range="searchParams.priceRange"
|
||||
></price-range-select>
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
<f:section name="Main">
|
||||
<div id="search">
|
||||
<search-result
|
||||
results-uri="{ep:uri.ajax(action: 'searchresult', controller: 'AjaxSearch', format: 'json', noCacheHash: 1)}"
|
||||
v-bind:initial-filter-settings='<v:format.json.encode>{filterSettings}</v:format.json.encode>'
|
||||
v-bind:initial-filter-options='<v:format.json.encode>{filterOptions}</v:format.json.encode>'
|
||||
v-bind:referring-page-uid="{referringPageUid}"
|
||||
results-uri="{ep:uri.ajax(action: 'searchresult', controller: 'AjaxSearch', pageUid: settings.defaultAjaxUid, format: 'json')}"
|
||||
:initial-filter-settings='<v:format.json.encode>{filterSettings}</v:format.json.encode>'
|
||||
:initial-filter-options='<v:format.json.encode>{filterOptions}</v:format.json.encode>'
|
||||
:referring-page-uid="{referringPageUid}"
|
||||
argument-prefix="{ep:argumentPrefix(pluginName: 'ajax')}"
|
||||
v-bind:date-presets='{settings.datePickerPresets -> v:format.json.encode()}'
|
||||
v-bind:watchlist="watchlist"
|
||||
:date-presets='{settings.datePickerPresets -> v:format.json.encode()}'
|
||||
:watchlist="watchlist"
|
||||
inline-template>
|
||||
<div class="searchresult-wrapper">
|
||||
<div class="pagehead pagehead--searchresult">
|
||||
@@ -34,7 +34,7 @@
|
||||
<a v-if="filterCount > 0"
|
||||
class="button button--sidebar button--small"
|
||||
href="#"
|
||||
v-on:click.prevent="resetFilterSettings">Filter zurücksetzen</a>
|
||||
@click.prevent="resetFilterSettings">Filter zurücksetzen</a>
|
||||
<form class="border">
|
||||
<div class="panel-group" id="filteroptions" role="tablist" aria-multiselectable="true">
|
||||
<div class="panel panel-default">
|
||||
@@ -52,11 +52,11 @@
|
||||
<div class="form-group">
|
||||
<destination-autocomplete
|
||||
class="form-group form-control"
|
||||
v-on:selected="updateDestination"
|
||||
@selected="updateDestination"
|
||||
:show-label="false"
|
||||
:initial-filter-settings="filterSettings"
|
||||
argument-prefix="{ep:argumentPrefix(pluginName: 'ajax', extensionName: 'epproducts')}"
|
||||
ajax-uri="{ep:uri.ajax(controller: 'AjaxFilterpanel', action: 'autocomplete', extensionName: 'epproducts', noCacheHash: '1')}"
|
||||
ajax-uri="{ep:uri.ajax(controller: 'AjaxFilterpanel', action: 'autocomplete', pageUid: settings.defaultAjaxUid, extensionName: 'epproducts', noCacheHash: '1')}"
|
||||
></destination-autocomplete>
|
||||
</div>
|
||||
</div>
|
||||
@@ -78,7 +78,7 @@
|
||||
:country-uids="filterSettings.countryUids"
|
||||
:region-uids="filterSettings.regionUids"
|
||||
:show-label="false"
|
||||
v-on:selected="updateDestinations"
|
||||
@selected="updateDestinations"
|
||||
></destination-checkboxes>
|
||||
</div>
|
||||
</div>
|
||||
@@ -98,7 +98,7 @@
|
||||
<concept-select
|
||||
:concept-options="filterOptions.concepts"
|
||||
:concepts="filterSettings.conceptUids"
|
||||
v-on:selected="updateConcepts"
|
||||
@selected="updateConcepts"
|
||||
></concept-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -112,7 +112,7 @@
|
||||
</h4>
|
||||
</div>
|
||||
<div id="collapsePeriod" class="panel-collapse collapse" role="tabpanel"
|
||||
v-bind:class="{ in: filterSettings.dateFrom || filterSettings.dateTo }"
|
||||
:class="{ in: filterSettings.dateFrom || filterSettings.dateTo }"
|
||||
aria-labelledby="headingPeriod">
|
||||
<div class="panel-body">
|
||||
<div class="form-group hidden-xs hidden-sm">
|
||||
@@ -124,14 +124,14 @@
|
||||
:min-date="filterOptions.dateFrom"
|
||||
:max-date="filterOptions.dateTo"
|
||||
:show-label="false"
|
||||
v-on:selected="updateDateRange"
|
||||
@selected="updateDateRange"
|
||||
></daterange-select>
|
||||
</div>
|
||||
<div class="form-group hidden-md hidden-lg">
|
||||
<label>Früheste Anreise</label>
|
||||
<input
|
||||
type="date"
|
||||
v-on:change="updateDateSelectMobile"
|
||||
@change="updateDateSelectMobile"
|
||||
v-model="filterSettings.dateFrom"
|
||||
class="form-control"
|
||||
>
|
||||
@@ -140,7 +140,7 @@
|
||||
<label>Späteste Abreise</label>
|
||||
<input
|
||||
type="date"
|
||||
v-on:change="updateDateSelectMobile"
|
||||
@change="updateDateSelectMobile"
|
||||
v-model="filterSettings.dateTo"
|
||||
class="form-control"
|
||||
>
|
||||
@@ -164,7 +164,7 @@
|
||||
:range-options="filterOptions.priceRanges"
|
||||
:range="filterSettings.priceRange"
|
||||
:show-label="false"
|
||||
v-on:selected="updatePriceRange"
|
||||
@selected="updatePriceRange"
|
||||
></price-range-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -186,7 +186,7 @@
|
||||
:pax-options="filterOptions.pax"
|
||||
:pax="filterSettings.pax"
|
||||
:show-label="false"
|
||||
v-on:selected="updatePax"
|
||||
@selected="updatePax"
|
||||
></pax-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -206,7 +206,7 @@
|
||||
<hotel-types-select
|
||||
:hotel-types-options="filterOptions.hotelTypes"
|
||||
:hotel-types="filterSettings.hotelTypes"
|
||||
v-on:selected="updateHotelTypes"
|
||||
@selected="updateHotelTypes"
|
||||
></hotel-types-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -226,7 +226,7 @@
|
||||
<board-types-select
|
||||
:board-types-options="filterOptions.boardTypes"
|
||||
:board-types="filterSettings.boardTypes"
|
||||
v-on:selected="updateBoardTypes"
|
||||
@selected="updateBoardTypes"
|
||||
></board-types-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -246,7 +246,7 @@
|
||||
<room-types-select
|
||||
:room-types-options="filterOptions.roomTypes"
|
||||
:room-types="filterSettings.roomTypes"
|
||||
v-on:selected="updateRoomTypes"
|
||||
@selected="updateRoomTypes"
|
||||
></room-types-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -260,14 +260,14 @@
|
||||
</h4>
|
||||
</div>
|
||||
<div id="collapseBus" class="panel-collapse collapse" role="tabpanel"
|
||||
v-bind:class="{ in: filterSettings.bus }"
|
||||
:class="{ in: filterSettings.bus }"
|
||||
aria-labelledby="headingBus">
|
||||
<div class="panel-body">
|
||||
<div class="form-group">
|
||||
<bus-select
|
||||
:bus-available="filterOptions.busAvailable"
|
||||
:bus="filterSettings.bus"
|
||||
v-on:selected="updateBus"
|
||||
@selected="updateBus"
|
||||
></bus-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -284,15 +284,15 @@
|
||||
<div class="searchresult__info alert alert-info" v-html="resultInfo"></div>
|
||||
<div class="searchresult__content">
|
||||
<template v-for="section in resultData">
|
||||
<a v-bind:id="'concept-' + section.concept.uid" class="anchor"></a>
|
||||
<a :id="'concept-' + section.concept.uid" class="anchor"></a>
|
||||
<h2 class="headline headline--secondary headline--underlined">{{ section.concept.name }}</h2>
|
||||
<div class="searchresult-section" v-bind:class="'searchresult-section--' + section.concept.code">
|
||||
<div class="searchresult-section" :class="'searchresult-section--' + section.concept.code">
|
||||
<search-result-item
|
||||
v-for="item in section.items"
|
||||
v-bind:key="item.key"
|
||||
v-bind:item="item"
|
||||
v-bind:section="section"
|
||||
v-bind:watchlist="watchlist"></search-result-item>
|
||||
:key="item.key"
|
||||
:item="item"
|
||||
:section="section"
|
||||
:watchlist="watchlist"></search-result-item>
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
<watchlist :watchlist="watchlist" :referring-page-uid="{referringPageUid}"
|
||||
loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}"
|
||||
watchlist-uri="{ep:uri.ajax(action: 'list', controller: 'AjaxWatchlist', format: 'json', noCacheHash: 1)}"></watchlist>
|
||||
watchlist-uri="{ep:uri.ajax(action: 'list', controller: 'AjaxWatchlist', pageUid: settings.defaultAjaxUid)}"></watchlist>
|
||||
</f:section>
|
||||
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user