init without trunk
This commit is contained in:
parent
ed24ac4994
commit
bb809e7233
14652 changed files with 177862 additions and 94817 deletions
|
|
@ -0,0 +1,57 @@
|
|||
<div class="row">
|
||||
{% for calendar_month in calendar %}
|
||||
|
||||
<div class="col-xs-12 col-sm-6">
|
||||
<table class="table calendar-table" id="jump-{{ calendar_month['monthNumber'] }}-{{ calendar_month['year'] }}">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="7">
|
||||
{{ calendar_month['monthNumber'] }} {{ calendar_month['monthName'] }} {{ calendar_month['year'] }}
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Mo</th>
|
||||
<th>Di</th>
|
||||
<th>Mi</th>
|
||||
<th>Do</th>
|
||||
<th>Fr</th>
|
||||
<th>Sa</th>
|
||||
<th>So</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for weekIndex in 0..5 %}
|
||||
<tr>
|
||||
{% for dayIndex in 0..6 %}
|
||||
{# @var dayState \AppBundle\Util\CalendarDayState #}
|
||||
{% set dayState = calendar_month['data'][(weekIndex * 7) + dayIndex] %}
|
||||
|
||||
<td class="{{ dayState.getCssClass }} {% if dayState.isBookable %}active{% endif %}">
|
||||
{% if dayState.isBookable %}
|
||||
{% if dayState.isPastDate %}
|
||||
<div><del style="color:#989898;">{{ dayState.day }}</del></div>
|
||||
{% else %}
|
||||
<a href="{{ page.urlPath }}/buchen?pnr={{ dayState.price.id }}&fd={{ dayState.day < 10 ? '0':'' }}{{dayState.day}}{{ calendar_month['monthNumber'] < 10 ? '0':'' }}{{calendar_month['monthNumber']}}{{calendar_month['year']}}"
|
||||
rel="nofollow" class="table-link"
|
||||
>
|
||||
{{ dayState.day }}
|
||||
</a>
|
||||
{% endif %}
|
||||
{% elseif dayState.day == 0 %}
|
||||
|
||||
{% else %}
|
||||
{% if dayState.isPastDate %}
|
||||
<div><del style="color:#989898;">{{ dayState.day }}</del></div>
|
||||
{% else %}
|
||||
<div>{{ dayState.day }}</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endfor %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
1265
app/Resources/views/default/pages/cms/components/ssSudan.html.twig
Normal file
1265
app/Resources/views/default/pages/cms/components/ssSudan.html.twig
Normal file
File diff suppressed because it is too large
Load diff
7
app/Resources/views/default/pages/cms/default.html.twig
Normal file
7
app/Resources/views/default/pages/cms/default.html.twig
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
34
app/Resources/views/default/pages/cms/feedback.html.twig
Normal file
34
app/Resources/views/default/pages/cms/feedback.html.twig
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix" style="margin-bottom: 0;">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
|
||||
<section class="clearfix">
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
{% for child_page in page.children if child_page.status == 1 %}
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
||||
{#
|
||||
402
|
||||
318
|
||||
315
|
||||
|
||||
UPDATE page SET page.order=page.id*-1 WHERE owner=402
|
||||
UPDATE page SET page.order=page.id*-1 WHERE owner=315
|
||||
UPDATE page SET page.order=page.id*-1 WHERE owner=318
|
||||
|
||||
Select DATE_FORMAT(page.date, '%Y%m%d')*-1 FROM page WHERE model='feedback'
|
||||
|
||||
UPDATE page SET page.order=DATE_FORMAT(page.date, '%Y%m%d')*-1 WHERE model='feedback'
|
||||
|
||||
UPDATE page SET page.model='feedback' WHERE owner=402
|
||||
UPDATE page SET page.model='feedback' WHERE owner=315
|
||||
UPDATE page SET page.model='feedback' WHERE owner=318
|
||||
#}
|
||||
|
|
@ -0,0 +1,229 @@
|
|||
{#{% extends 'admin.html.twig' %}#}
|
||||
{# @var fewo_lodging \AppBundle\Entity\FewoLodging #}
|
||||
{% extends get_base_template() %}
|
||||
|
||||
{% block stylesheets %}
|
||||
<style>.box-slider .slide:not(.active) {display: none;}</style>{# TODO Move to custom.css #}
|
||||
<link rel="stylesheet" href="{{ asset('css/my-fewo.css?v') }}{{ get_file_last_time('css/my-fewo.css') }}">
|
||||
{% endblock stylesheets %}
|
||||
{% block body %}
|
||||
|
||||
<section class="clearfix">
|
||||
<div class="content-copy">
|
||||
|
||||
<h1>{{ fewo_lodging.name }}</h1>
|
||||
|
||||
{#
|
||||
********* SLIDER *********
|
||||
#}
|
||||
|
||||
<section class="section fullscreen background padding-0 margin-bottom-20">
|
||||
<div id="myCarousel" class="carousel slide fewo">
|
||||
<!-- Indicators -->
|
||||
<ol class="carousel-indicators">
|
||||
{% for lodging_image in slider_imgs %}
|
||||
<li data-target="#myCarousel" data-slide-to="{{ loop.index-1 }}" {% if loop.first %}class="active"{% endif %}></li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
<!-- Wrapper for Slides -->
|
||||
<div class="carousel-inner">
|
||||
{% for lodging_image in slider_imgs %}
|
||||
<div class="item{% if loop.first %} active{% endif %}">
|
||||
<div class="fill" style="background-image:url({{ asset('_uploads/images/' ~ lodging_image.file) }});background-position: center center">
|
||||
<span class="image-title">{{ lodging_image.fileName }}</span>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<!-- Controls -->
|
||||
<a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
|
||||
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
|
||||
<span class="sr-only">Previous</span>
|
||||
</a>
|
||||
<a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
|
||||
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
|
||||
<span class="sr-only">Next</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</section><!-- end section -->
|
||||
|
||||
{#
|
||||
********* TAB BAR *********
|
||||
#}
|
||||
|
||||
{% block travel_lodging_program_tab_bar %}
|
||||
<div class="scroller-nav-tabs scroller-left-nav-tabs"><i class="glyphicon glyphicon-chevron-left"></i></div>
|
||||
<div class="scroller-nav-tabs scroller-right-nav-tabs"><i class="glyphicon glyphicon-chevron-right"></i></div>
|
||||
<div class="wrapper-nav-tabs">
|
||||
<ul class="nav nav-tabs nav-justified list-nav-tabs">
|
||||
<li class="">
|
||||
<a href="#travel-description-content-tab" aria-controls="travel-description-content-tab" role="tab" data-toggle="tab">
|
||||
Beschreibung
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#travel-equipment-content-tab" aria-controls="travel-equipment-content-tab" role="tab" data-toggle="tab">
|
||||
Ausstattung
|
||||
</a>
|
||||
</li>
|
||||
<li class="active">
|
||||
<a href="#travel-dates-content-tab" aria-controls="travel-dates-content-tab" role="tab" data-toggle="tab">
|
||||
Termine <i class="fa fa-star"></i> Preise <i class="fa fa-star"></i> Mieten
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endblock travel_lodging_program_tab_bar %}
|
||||
|
||||
<div class="tab-content">
|
||||
|
||||
{#
|
||||
********* BESCHREIBUNG *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane " id="travel-description-content-tab">
|
||||
|
||||
<h3>Allgemeines</h3>
|
||||
|
||||
<div class="table-responsive" id="no-more-tables">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Typ</th>
|
||||
<th>Adresse</th>
|
||||
<th>PLZ</th>
|
||||
<th>Ort</th>
|
||||
<th>Max. Personenanzahl</th>
|
||||
<th>Kaution</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-title="Typ">
|
||||
{{ fewo_lodging.type }}
|
||||
</td>
|
||||
<td data-title="Adresse">
|
||||
{{ fewo_lodging.adress1 }}
|
||||
{% if fewo_lodging.adress2 is not empty %}
|
||||
{{ fewo_lodging.adress2 }}
|
||||
{% endif %}
|
||||
</td>
|
||||
<td data-title="PLZ">
|
||||
{{ fewo_lodging.zipCode }}
|
||||
</td>
|
||||
<td data-title="Ort">
|
||||
{% if fewo_lodging.city is not empty %}
|
||||
{{ fewo_lodging.city }}
|
||||
{% endif %}
|
||||
</td>
|
||||
<td data-title="Max. Personenanzahl">
|
||||
{% if fewo_lodging.maximumPersons is not empty %}
|
||||
{{ fewo_lodging.maximumPersons }}
|
||||
{% endif %}
|
||||
</td>
|
||||
<td data-title="Kaution">
|
||||
{% if fewo_lodging.deposit is not empty %}
|
||||
{{ fewo_lodging.deposit|number_format(2, ',', '.') }} €
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% if fewo_lodging.description is not empty %}
|
||||
<hr>
|
||||
<div>
|
||||
{{ fewo_lodging.description|raw }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
|
||||
{#
|
||||
********* AUSSTATTUNG *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane" id="travel-equipment-content-tab">
|
||||
<div>
|
||||
{{ fewo_lodging.equipment|raw }}
|
||||
</div>
|
||||
</div> <!-- END tabpanel -->
|
||||
|
||||
{#
|
||||
********* TERMINE UND PREISE *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane active" id="travel-dates-content-tab">
|
||||
<h3>Saisons</h3>
|
||||
<div class="table-responsive" id="no-more-tables">
|
||||
|
||||
{% if fewo_lodging.prices is not empty %}
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Beginn</th>
|
||||
<th>Ende</th>
|
||||
<th>Mindestbelegung</th>
|
||||
<th>Preis pro Nacht</th>
|
||||
<th>Service-Gebühr</th>
|
||||
<th>Kaution</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for price in fewo_lodging.prices %}
|
||||
{% if price.season is not empty %}
|
||||
<tr>
|
||||
<td data-title="Name">
|
||||
<strong class="small">
|
||||
{{ price.season.name }}
|
||||
</strong>
|
||||
</td>
|
||||
<td data-title="Beginn">
|
||||
<a class="default scroll-to-jump" href="#jump-{{ price.season.fromDate|date("n-Y") }}">
|
||||
{{ price.season.fromDate|date }}
|
||||
</a>
|
||||
</td>
|
||||
<td data-title="Ende">
|
||||
<a class="default scroll-to-jump" href="#jump-{{ price.season.toDate|date("n-Y") }}">
|
||||
{{ price.season.toDate|date }}
|
||||
</a>
|
||||
</td>
|
||||
<td data-title="Mindestbelegung">
|
||||
{{ price.season.minimumStay }} {{ price.season.minimumStay < 2 ? 'Nacht' : 'Nächte' }}
|
||||
</td>
|
||||
<td data-title="Preis p.P pro Nacht">
|
||||
{{ price.perNight|number_format(2, ',', '.') }} €
|
||||
</td>
|
||||
<td data-title="Service-Gebühr">
|
||||
{{ price.flatPrice|number_format(2, ',', '.') }} €
|
||||
</td>
|
||||
<td data-title="Kaution">
|
||||
{% if fewo_lodging.deposit is not empty %}
|
||||
{{ fewo_lodging.deposit|number_format(2, ',', '.') }} €
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
Momentan sind für dieses Programm keine Termine verfügbar.
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<h3>Buchung</h3>
|
||||
|
||||
<p>Bitte klicken Sie einen Anreisetermin (grüne Zahl), um zur Buchungsmaske zu gelagen.</p>
|
||||
|
||||
{% include 'default/pages/cms/calendarLodgingProgram.html.twig' %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section><!-- end section -->
|
||||
{% endblock body %}
|
||||
104
app/Resources/views/default/pages/cms/iqTravelGuide.html.twig
Normal file
104
app/Resources/views/default/pages/cms/iqTravelGuide.html.twig
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
{% set site_has_h1 = false %}
|
||||
{% if(api is defined) %}
|
||||
{% if api.sites|length > 1 %}
|
||||
<div class="wrapper-nav-tabs">
|
||||
<ul class="nav nav-tabs nav-justified list-nav-tabs">
|
||||
{% for site in api.sites %}
|
||||
<li class="{% if loop.index==1 %} active {% endif %}">
|
||||
<a href="#travel_guide_content_{{ site.id }}" aria-controls="travel_guide_content_{{ site.id }}" role="tab" data-toggle="tab">
|
||||
{% if(site.scope == 0) %}
|
||||
Zusammenfassung <i class="hidden-xs">für eilige Leser</i>
|
||||
{% else %}
|
||||
Ausführliche Darstellung <i class="hidden-xs">für Interessierte</i>
|
||||
{% endif %}
|
||||
</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
<div class="tab-content">
|
||||
{% for site in api.sites %}
|
||||
<div role="tabpanel" class="tab-pane {% if loop.index==1 %} active {% endif %}" id="travel_guide_content_{{ site.id }}">
|
||||
{% if(site_has_h1) %}
|
||||
<h2 class="h1l">{{ site.name }}</h2>
|
||||
{% else %}
|
||||
<h1>{{ site.name }}</h1>
|
||||
{% set site_has_h1 = true %}
|
||||
{% endif %}
|
||||
{{ site.full_text|raw|keywords|lozad }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="wrapper-nav-tabs">
|
||||
<ul class="nav nav-tabs nav-justified list-nav-tabs">
|
||||
{% for site in api.sites %}
|
||||
<li class="{% if loop.index==1 %} active {% endif %}">
|
||||
<a href="#travel_guide_content_{{ site.id }}" aria-controls="travel_guide_content_{{ site.id }}" role="tab" data-toggle="tab">
|
||||
{% if(site.scope == 0) %}
|
||||
Zusammenfassung <i class="hidden-xs">für eilige Leser</i>
|
||||
{% else %}
|
||||
Ausführliche Darstellung <i class="hidden-xs">für Interessierte</i>
|
||||
{% endif %}
|
||||
</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% else %}
|
||||
{% for site in api.sites %}
|
||||
{% if(site_has_h1) %}
|
||||
<h2 class="h1l">{{ site.name }}</h2>
|
||||
{% else %}
|
||||
<h1>{{ site.name }}</h1>
|
||||
{% set site_has_h1 = true %}
|
||||
{% endif %}
|
||||
{{ site.full_text|raw|keywords|lozad }}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</section>
|
||||
<hr>
|
||||
{% if(api is defined and api.children is defined and api.children is not empty) %}
|
||||
<section class="clearfix">
|
||||
<div class="row">
|
||||
{% for child_page in api.children %}
|
||||
{% if(child_page.active) %}
|
||||
<div class="col-md-4 col-sm-6">
|
||||
<div class="travel-wrapper get-box-link">
|
||||
<div class="item text-left">
|
||||
{% if(false and child_page.box_image_url is defined and child_page.box_image_url is not empty) %}
|
||||
<div class="item-img" style="height: 220px;">
|
||||
{% if child_page.box_image_url is defined and child_page.box_image_url is not empty %}
|
||||
{% set image_url = child_page.box_image_url %}
|
||||
{% set image_alt = child_page.name %}
|
||||
{% else %}
|
||||
{% set image_url = asset('/bundles/app/images/no-picture.png')%}
|
||||
{% set image_alt = 'Kein Vorschaubild vorhanden' %}
|
||||
{% endif %}
|
||||
<div class="img-background lozad" data-background-image="{{ image(image_url|trim('/')).cropResize(960).guess(90) }}" style="background-image:url({{ asset('images/placeholder-image.png') }}); height: 220px;"></div>
|
||||
<noscript>
|
||||
<img width="234" height="180" src="{{ image(image_url|trim('/')).cropResize(960).guess(90) }}" class="img-responsiv img-responsiv-item" style="">
|
||||
</noscript>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="box_mid">
|
||||
<div class="hl5">{{ child_page.name }}</div>
|
||||
<p>{{ child_page.description }}</p>
|
||||
</div>
|
||||
<a class="item-button is-box-link dobble_line" href="{{ child_page.url }}" title="{{ child_page.name }}">
|
||||
<span>{{ child_page.name }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{% include 'overview.html.twig' %}
|
||||
90
app/Resources/views/default/pages/cms/nilecruise.html.twig
Normal file
90
app/Resources/views/default/pages/cms/nilecruise.html.twig
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
<h1>{{ page.pagetitle|default(page.title) }}</h1>
|
||||
|
||||
<section class="clearfix">
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
|
||||
{% for child_page in page.children if child_page.slug == "nilschiff-ss-sudan" %}
|
||||
<div class="col-md-12 col-sm-12">
|
||||
<div class="travel-wrapper get-box-link">
|
||||
<div class="item text-left">
|
||||
<div class="item-img" style="height: 220px;">
|
||||
<div class="lb">
|
||||
{% if child_page.boxStar is not empty %}
|
||||
<div class="cstar_left">{{ child_page.boxStar|raw }}</div>
|
||||
{% endif %}
|
||||
{% if child_page.travelProgram is not empty and child_page.travelProgram.lowestPrice > 0 %}
|
||||
<div class="cprice">ab {{ child_page.travelProgram.lowestPrice|number_format }} € p.P.</div>
|
||||
{% endif %}
|
||||
{% if child_page.boxDiscount is not empty %}
|
||||
<div class="cdiscount">{{ child_page.boxDiscount|raw }}</div>
|
||||
{% endif %}
|
||||
{% if child_page.model == 'feedback'%}
|
||||
<div class="cdiscount">{{ child_page.date|date }}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if child_page.boxImageUrl is not empty %}
|
||||
{% set image_url = child_page.boxImageUrl %}
|
||||
{% set image_alt = child_page.travelProgram.title|default(page.title) %}
|
||||
{% else %}
|
||||
{% set image_url = asset('/bundles/app/images/no-picture.png')%}
|
||||
{% set image_alt = 'Kein Vorschaubild vorhanden' %}
|
||||
{% endif %}
|
||||
<div class="img-background lozad" data-background-image="{{ image(image_url|trim('/')).cropResize(960).guess(90) }}" style="background-image:url({{ asset('images/placeholder-image.png') }}); height: 220px;"></div>
|
||||
<noscript>
|
||||
<img width="234" height="180" src="{{ image(image_url|trim('/')).cropResize(960).guess(90) }}" class="img-responsiv img-responsiv-item" style="">
|
||||
</noscript>
|
||||
|
||||
</div>
|
||||
<div class="box_mid">
|
||||
<div class="hl5">{{ child_page.title }}</div>
|
||||
<p>{{ child_page.boxBody ?? child_page.description }}</p>
|
||||
</div>
|
||||
<a class="item-button is-box-link dobble_line" href="{{ child_page.urlPath }}" title="{{ child_page.title }}">
|
||||
<span>{{ child_page.title }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="clearfix content-pane">
|
||||
<h2 class="h3 h3l">Unsere beliebtesten Kulturreisen</h2>
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
{% for child_page in child_pages if child_page.status == 1 and child_page.travelProgram is not empty %}
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
{% if mediated_child_pages is not empty %}
|
||||
|
||||
<h2 class="h3 h3l">
|
||||
Vermittelte Rundreisen vom {{ page.country is not empty ? (page.country.name ~ '-') }}Spezialisten
|
||||
STERN TOURS aus Berlin
|
||||
</h2>
|
||||
|
||||
<div class="row">
|
||||
{% for child_page in mediated_child_pages %}
|
||||
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
</section>
|
||||
|
||||
<section class="clearfix">
|
||||
<hr class="primary">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
||||
16
app/Resources/views/default/pages/cms/offers.html.twig
Normal file
16
app/Resources/views/default/pages/cms/offers.html.twig
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{# @var page \AppBundle\Entity\Page #}
|
||||
{% extends get_base_template() %}
|
||||
|
||||
{% block offers_sidebar_widget %}{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
|
||||
<section class="clearfix hide-in-modal">
|
||||
<h3>Unsere beliebtesten Kulturreisen</h3>
|
||||
|
||||
{{ render(controller('AppBundle:Component:offersCarousel', {country: page.effectiveCountry})) }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
42
app/Resources/views/default/pages/cms/overview.html.twig
Normal file
42
app/Resources/views/default/pages/cms/overview.html.twig
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{#
|
||||
{% block nav_sidebar_widget %}
|
||||
{% include 'default/components/sidebar/navSidebarWidget.html.twig' %}
|
||||
{% endblock %}
|
||||
#}
|
||||
{% block body %}
|
||||
<h1>{{ page.pagetitle|default(page.title) }}</h1>
|
||||
<div id="section_order">
|
||||
<section class="clearfix" id="section_order_second">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
<section class="clearfix" id="section_order_first">
|
||||
{% if(page.slug == "ferienwohnungen")%}
|
||||
{% if lodgingGroups is not empty %}
|
||||
{% for lodgingGroup in lodgingGroups %}
|
||||
<h1>{{ lodgingGroup.name }}</h1>
|
||||
|
||||
<div class="row">
|
||||
{% if lodgingGroup.lodgings is not empty %}
|
||||
{% for lodging in lodgingGroup.lodgings %}
|
||||
{% include 'default/components/pageLodgingBox.html.twig' %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
{% for child_page in page.children if child_page.status == 1 %}
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</section>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
<h1>{{ page.pagetitle|default(page.title) }}</h1>
|
||||
|
||||
{% form_theme search_form 'default/form/theme.html.twig' %}
|
||||
<div class="widget clearfix">
|
||||
<div class="widget-title">
|
||||
<!-- <a class="collapse-widget" href="#search-widget" data-toggle="collapse">Zeitraum</a> -->
|
||||
</div><!-- end title -->
|
||||
<div class="searchwidget collapse in" id="search-widget">
|
||||
<form action="/ferienwohnungen/ferienwohnungen-kalender" method="post" class="searchform row st-search-form">
|
||||
|
||||
<div class="form-group col-md-6">
|
||||
<div class="required">
|
||||
{{ form_field_pho(search_form.from, 'Anreise', {required: true}) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-6">
|
||||
<div class="required">
|
||||
{{ form_field_pho(search_form.to, 'Abreise', {required: true}) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group col-md-12 col-sm-12 col-xs-12 text-center form-bottom">
|
||||
<button type="submit" class="btn btn-sm btn-primary btn-block">freie Ferienwohnungen suchen</button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
</div><!-- end boxwidget -->
|
||||
</div>
|
||||
|
||||
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
{% for child_page in page.children if child_page.status == 1 %}
|
||||
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
||||
|
||||
|
||||
167
app/Resources/views/default/pages/cms/ssSudan.html.twig
Normal file
167
app/Resources/views/default/pages/cms/ssSudan.html.twig
Normal file
|
|
@ -0,0 +1,167 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
|
||||
<section class="clearfix content-pane">
|
||||
<h2 class="h3 h3l" style="padding-top:0px;margin-top:0;">Programm Nilkreuzfahrt SS Sudan</h2>
|
||||
<div class="row">
|
||||
{% for child_page in box_childs if child_page.status == 1 and child_page.travelProgram is not empty %}
|
||||
|
||||
{# @var child_page \AppBundle\Entity\Page #}
|
||||
<div class="col-md-6 col-sm-6">
|
||||
<div class="travel-wrapper get-box-link">
|
||||
<div class="item text-left">
|
||||
<div class="item-img">
|
||||
<div class="lb">
|
||||
{% if child_page.boxStar is not empty %}
|
||||
<div class="cstar_left">{{ child_page.boxStar|raw }}</div>
|
||||
{% endif %}
|
||||
{% if child_page.travelProgram is not empty and child_page.travelProgram.lowestPrice > 0 %}
|
||||
<div class="cprice">ab {{ child_page.travelProgram.lowestPrice|number_format }}
|
||||
€ p.P.
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if child_page.boxDiscount is not empty %}
|
||||
<div class="cdiscount">{{ child_page.boxDiscount|raw }}</div>
|
||||
{% endif %}
|
||||
{% if child_page.model == 'feedback' %}
|
||||
<div class="cdiscount">{{ child_page.date|date }}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% include 'default/components/pageBoxImage.html.twig' with {page: child_page} %}
|
||||
</div>
|
||||
<div class="box_mid">
|
||||
<div class="hl5">{{ child_page.title }}</div>
|
||||
<p>{{ child_page.boxBody ?? child_page.description }}</p>
|
||||
</div>
|
||||
<a class="item-button is-box-link dobble_line" href="{{ child_page.urlPath }}"
|
||||
title="{{ child_page.title }}">
|
||||
<span>{{ child_page.title }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
{% include 'default/pages/cms/components/ssSudan.html.twig' %}
|
||||
|
||||
|
||||
<div class="content-pane">
|
||||
<h1>Die SS Sudan</h1>
|
||||
<p class="ft">
|
||||
Der sehr elegante Restaurantsaal besteht ebenfalls aus Mobiliar des 19. Jahrhunderts und ist mit
|
||||
Originalparkettboden ausgestattet. Lassen Sie sich im Restaurant von einer sehr abwechslungsreichen und
|
||||
raffinierten Kochkunst verwöhnen. Einen Panoramablick bietet Ihnen die Lounge/Bar. Eine große Terrasse auf
|
||||
dem Oberdeck, mit Liegestühlen und Sesseln bietet Ihnen die Möglichkeit, während die wunderbare Landschaft
|
||||
an Ihnen vorbeizieht, den Tag Tag sein zu lassen und sich ausgiebig zu erholen.
|
||||
</p>
|
||||
|
||||
<p class="ft"><strong>Hier finden Sie Links zu Informationen zum Preis der SS Sudan, zum Reiseveranstalter STERN
|
||||
TOURS und zu den letzten Kundenfeedbacks mit der Fahrt auf der SS Sudan:</strong></p>
|
||||
<ul class="">
|
||||
<li>Zu <a href="/aegypten_reisen_catalog/ss-sudan-3-naechte-preise.html"
|
||||
title="Preise 3 Nächte Schiff Sudan">Preise 3 Nächte SS Sudan</a></li>
|
||||
<li>Zu <a href="/aegypten_reisen_catalog/ss-sudan-4-naechte-preise.html"
|
||||
title="Preise Nilschiff Sudan 4 Nächte">Preise 4 Nächte SS Sudan</a><br/></li>
|
||||
<li>Zum <a href="/aegypten_reisen_catalog/ss-sudan-programm-3-nights.html"
|
||||
title="Besichtigunsprogramm 3 Nächte SS Sudan">Besichtigunsprogramm 3 Nächte SS
|
||||
Sudan</a><br/></li>
|
||||
<li>Zum <a href="/aegypten_reisen_catalog/ss-sudan-programm-4-nights.html"
|
||||
title="Besichtigungsprogramm 4 Nächte Sudan">Besichtigunsprogramm 4 Nächte SS Sudan</a>
|
||||
<br/></li>
|
||||
<li>Zum <a href="/aegypten_reisen_catalog/ss-sudan-nilkreuzfahrt.html" title="Nilkreuzfahrt SS Sudan">14 tägigen
|
||||
Beispielprogramm SS Sudan - Nilkreuzfahrt mit Kairo und Baden</a><br/></li>
|
||||
<li>Zum <a href="/docs/169/aegypten-reise-felbinger.html" title="Kundenfeedbakcs">Kundenfeedback - SS Sudan
|
||||
- Familie Felbinger</a><br/></li>
|
||||
<li>Zum <a href="/docs/169/aegypten-ss-sudan-old-mena-house.html" title="Kundenfeedbakcs">Kundenfeedback -
|
||||
SS Sudan - Familie Kreuser</a> <br/></li>
|
||||
<li>Informationen zu <a href="/aegypten_reisen_catalog/info-aegypten-spezialist.html"
|
||||
title="Kontakt Ägyptenreisen">STERN TOURS</a><br/></li>
|
||||
<li>Zu unseren <a href="/aegypten_reisen_catalog/offene-worte.html" title="offenen Worten">Offenen
|
||||
Worten</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Das Dampfschiff Sudan & Verantwortungsvoller Tourismus</h2>
|
||||
|
||||
<p class="ft">
|
||||
Das Dampfschiff Sudan wurde in Bezug auf die Umwelt und den Tourismus deutlich verändert. Zunächst wurde der
|
||||
Verbrauch von Energie gesenkt. Durch die Verbesserung der Triebwerke, durch minimierte Belastung des
|
||||
Schiffes und durch die Installation von Solarenergie für Wärme, Sanitärwasser, und die Schaufelräder ist es
|
||||
gelungen, den Kraftstoffverbrauch um 30% zu verringern und damit auch Treibhausgasemissionen. Der Konsum von
|
||||
CO2 wurde auf eine halbe Tonne pro Passagier pro Fahrt reduziert, was der hohen Achtsamkeit anzurechnen ist.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Das Wasser, welches für die Duschen verwendet wird, stammt vom Nil und wird durch mehrere Filter geführt,
|
||||
die jeden Monat streng kontrolliert werden. Der erste Filter entfernt den Sand, der zweite Filter bereitet
|
||||
das Wasser durch eine Kohlenzusammensetzung auf und der Letzte filtert Bakterien durch ultraviolettes Licht
|
||||
aus.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Tägliche strikte Maßnahmen stellen eine umweltverträgliche und nachhaltige Entwicklung sicher. Das Schiff
|
||||
nutzt ausschließlich Energiesparlampen und biologisch abbaubares, ökofreundliches Waschmittel (made in
|
||||
Egypt). Es werden so viele biologische Produkte wie möglich genutzt (mit Ausnahme der antibakteriellen Bade
|
||||
Waschprodukte, die auf Bleichmittel basieren) und das Papier wird wiederverwendet.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Die Kosmetikprodukte in den Badezimmern sind alle natürlich und basieren auf Olivenöl, welches aus Ägypten
|
||||
kommt. Um den Verbrauch von Verpackungen zu beschränken, sind alle Produkte in Behälter gefüllt.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Die gesamte Ausstattung auf dem Dampfschiff Sudan ist von ägyptischen Tischlern und Schreinern angefertigt
|
||||
worden.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Mineralwasser an Bord ist frei.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Seit dem Altertum bezaubert Ägypten jeden, der mit diesem Land in Berührung kommt. Dem Mythos und dieser
|
||||
Magie der vergangenen Zivilisation dieses atemberaubenden Landes ist bisher jeder erlegen. Die Reise nach
|
||||
Ägypten wurde mit der Zeit, sei es in kulturellen oder in Kunstkreisen, zu einem absoluten Muss. Mit dem 20.
|
||||
Jahrhundert wurde Ägypten unausweichlich zu einem Ziel der modernen Reisekultur. Der Nil, der sowohl weite
|
||||
Teile des Landes bewässert und nährt, als auch als Handels- und Verbindungsroute zwischen Europa und Afrika
|
||||
dient, ist ohne Zweifel die Lebensader Ägyptens. Den Nil zu bereisen, bedeutet die Geschichte und die
|
||||
Entwicklung Ägyptens zu verstehen. So trifft man auf den Gewässern des Nils, nebst den traditionellen
|
||||
Feluken (Küstenfahrzeugen), auch zahlreiche Boote voller interessierter Besucher.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Eine Kreuzfahrt auf dem Nil ist auf den unterschiedlichsten Schiffen zu erkunden. Jedoch haben wir uns
|
||||
speziell für die SS Sudan entschieden. Die Nillandschaft, auf einem unverwechselbarem antiken
|
||||
Kreuzfahrtschiff, erbaut 1885, wie zu Zeiten der Könige, zu erkunden, ist und bleibt einzigartig. Es ist die
|
||||
SS Sudan, auf der Agatha Christie ihre bekannte Romanfigur „Hercule Poirot“ weiterentwickelt hat. Es ist
|
||||
ebenfalls die SS Sudan, auf der Agatha Christies berühmter Kriminalroman „Tod auf dem Nil“ gedreht wurde.
|
||||
</p>
|
||||
|
||||
<h2>Video zum Rundgang auf dem Nilschiff SS Sudan</h2>
|
||||
|
||||
<div class="video-wrap">
|
||||
<div class="g-absolute-centered">
|
||||
<a data-type="youtube" data-src="https://www.youtube-nocookie.com/embed/hnjHNzdPJmc"
|
||||
href="javascript:;">
|
||||
<div class="u-icon-v3"> Video ansehen <i class="fa fa-play"></i></div>
|
||||
</a>
|
||||
</div>
|
||||
<img src="/images/placeholder-image.png" data-src="https://img.youtube.com/vi/hnjHNzdPJmc/sddefault.jpg"
|
||||
class="img-responsive lozad" alt="">
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
13
app/Resources/views/default/pages/cms/ssSudanTour.html.twig
Normal file
13
app/Resources/views/default/pages/cms/ssSudanTour.html.twig
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
{% include 'default/pages/cms/components/ssSudan.html.twig' %}
|
||||
|
||||
<div class="content-pane">
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
49
app/Resources/views/default/pages/cms/sunstar.html.twig
Normal file
49
app/Resources/views/default/pages/cms/sunstar.html.twig
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
<h1>{{ page.pagetitle|default(page.title) }}</h1>
|
||||
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
{% for tp in sunstar_travel_programs %}
|
||||
|
||||
<div class="col-md-4 col-sm-4">
|
||||
<div class="travel-wrapper get-box-link">
|
||||
<div class="item text-left">
|
||||
<div class="item-img">
|
||||
<div class="lb">
|
||||
{% if tp.minimumPrice is not empty %}
|
||||
<div class="cprice">ab {{ tp.minimumPrice }} € p.P.</div>
|
||||
{% endif %}
|
||||
{% if tp.minimumAge is not empty and tp.maximumAge is not empty %}
|
||||
<div class="cdiscount">
|
||||
{{ tp.minimumAge }} - {{ tp.maximumAge }} Jahre
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div class="img-background" style="background-image: url('{{ tp.imageUrl }}');"></div>
|
||||
|
||||
</div>
|
||||
<div class="box_mid">
|
||||
<div class="hl5">{{ tp.title }}</div>
|
||||
<p>{{ tp.description }}</p>
|
||||
</div>
|
||||
<a class="item-button is-box-link dobble_line" href="{{ tp.url }}" title="{{ tp.title }}"
|
||||
rel="nofollow" target="_blank"
|
||||
>
|
||||
<span>{{ tp.title }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
88
app/Resources/views/default/pages/cms/travelGuide.html.twig
Normal file
88
app/Resources/views/default/pages/cms/travelGuide.html.twig
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
{% if(page.travelGuideContentId) %}
|
||||
<div class="wrapper-nav-tabs">
|
||||
<ul class="nav nav-tabs nav-justified list-nav-tabs">
|
||||
<li class="active">
|
||||
<a href="#travel_guide_long_content" aria-controls="travel_guide_long_content" role="tab" data-toggle="tab">
|
||||
Ausführliche Darstellung <i class="hidden-xs">für Interessierte</i>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#travel_guide_short_content" aria-controls="travel_guide_short_content" role="tab" data-toggle="tab">
|
||||
Zusammenfassung <i class="hidden-xs">für eilige Leser</i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="tab-content">
|
||||
<div role="tabpanel" class="tab-pane active" id="travel_guide_short_content">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</div>
|
||||
<div role="tabpanel" class="tab-pane" id="travel_guide_long_content">
|
||||
{{ travel_guide_content.fullText|raw|keywords|lozad }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="wrapper-nav-tabs">
|
||||
<ul class="nav nav-tabs nav-justified list-nav-tabs">
|
||||
<li class="active">
|
||||
<a href="#travel_guide_long_content" aria-controls="travel_guide_long_content" role="tab" data-toggle="tab">
|
||||
Ausführliche Darstellung <i class="hidden-xs">für Interessierte</i>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#travel_guide_short_content" aria-controls="travel_guide_short_content" role="tab" data-toggle="tab">
|
||||
Zusammenfassung <i class="hidden-xs">für eilige Leser</i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% else %}
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
{% endif %}
|
||||
</section>
|
||||
<hr>
|
||||
{% if( page.children is not empty) %}
|
||||
<section class="clearfix">
|
||||
<h2>{{ page.title }}</h2>
|
||||
<div class="row">
|
||||
{% for child_page in page.children %}
|
||||
{% if(child_page.status) %}
|
||||
<div class="col-md-4 col-sm-6">
|
||||
<div class="travel-wrapper get-box-link">
|
||||
<div class="item text-left">
|
||||
{% if(page.slug == 'reisefuehrer' ) %}
|
||||
<div class="item-img" style="height: 220px;">
|
||||
{% if child_page.boxImageUrl is not empty %}
|
||||
{% set image_url = child_page.boxImageUrl %}
|
||||
{% set image_alt = child_page.travelProgram.title|default(page.title) %}
|
||||
{% else %}
|
||||
{% set image_url = asset('/bundles/app/images/no-picture.png')%}
|
||||
{% set image_alt = 'Kein Vorschaubild vorhanden' %}
|
||||
{% endif %}
|
||||
<div class="img-background lozad" data-background-image="{{ image(image_url|trim('/')).cropResize(960).guess(90) }}" style="background-image:url({{ asset('images/placeholder-image.png') }}); height: 220px;"></div>
|
||||
<noscript>
|
||||
<img width="234" height="180" src="{{ image(image_url|trim('/')).cropResize(960).guess(90) }}" class="img-responsiv img-responsiv-item" style="">
|
||||
</noscript>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="box_mid">
|
||||
<div class="hl5">{{ child_page.title }}</div>
|
||||
<p>{{ child_page.boxBody ?? child_page.description }}</p>
|
||||
</div>
|
||||
<a class="item-button is-box-link dobble_line" href="{{ child_page.urlPath }}" title="{{ child_page.title }}">
|
||||
<span>{{ child_page.title }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
442
app/Resources/views/default/pages/cms/travelProgram.html.twig
Normal file
442
app/Resources/views/default/pages/cms/travelProgram.html.twig
Normal file
|
|
@ -0,0 +1,442 @@
|
|||
{# @var travel_program \AppBundle\Entity\TravelProgram #}
|
||||
{% extends get_base_template() %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{% javascripts '@AppBundle/Resources/public/js/travelProgram.js' %}
|
||||
<script src="{{ asset_url }}"></script>
|
||||
{% endjavascripts %}
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
<section class="clearfix">
|
||||
<div class="content-copy">
|
||||
<h1>{{ travel_program.title|default(page.pagetitle)|default(page.title) }}</h1>
|
||||
|
||||
|
||||
<section class="section fullscreen background padding-0 margin-bottom-20">
|
||||
<div class="in-section-holder">
|
||||
{% if travel_program.lowestPrice > 0 %}
|
||||
<div class="price-over-slider">
|
||||
<div class="cprice">ab {{ travel_program.lowestPrice|number_format }} € p.P.</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if travel_program.sliderInfo is not empty %}
|
||||
<div class="price-over-slider next-over">
|
||||
<div class="cprice">{{ travel_program.sliderInfo|raw }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if travel_program.travelDates is not empty %}
|
||||
<div class="pull-right btn-over-slider">
|
||||
<button type="button"
|
||||
class="btn btn-primary btn-lg border-radius st-slider-booking-btn" id="st-slider-booking-events-scroll">
|
||||
Termine <i class="fa fa-star faa-burst animated" style="margin-top: -5px"></i> Preise
|
||||
</button>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="pull-right btn-over-slider btn-over-slider-bottom">
|
||||
<a href="{{ page.slug }}/pdf" title="Reisebeschreibung als PDF herunterladen"
|
||||
class="btn btn-primary btn-sm border-radius st-slider-booking-btn st-slider-booking-btn-bottom">
|
||||
<i class="fa fa-print" style="margin-top: -3px;"></i> Katalogseite zum Drucken
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="myCarousel" class="carousel slide">
|
||||
<!-- Indicators -->
|
||||
<ol class="carousel-indicators">
|
||||
{% for travel_program_image in travel_program.images %}
|
||||
<li data-target="#myCarousel" data-slide-to="{{ loop.index-1 }}" {% if loop.first %}class="active"{% endif %}></li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
<!-- Wrapper for Slides -->
|
||||
<div class="carousel-inner">
|
||||
{% for travel_program_image in travel_program.images %}
|
||||
{# @var image \AppBundle\Entity\TravelProgramImage #}
|
||||
<div class="item{% if loop.first %} active{% endif %}">
|
||||
<!-- Set the first background image using inline CSS below. -->
|
||||
{% set image_url = asset('uploads/travel_program/' ~ travel_program_image.fileNameWithExtension) %}
|
||||
<div class="fill lozad"
|
||||
data-background-image="{{ image(image_url|trim('/')).cropResize(848).guess(75) }}"
|
||||
style="background-image:url({{ asset('images/placeholder-image.png') }});background-position: center {{ travel_program_image.position }}"></div>
|
||||
<noscript>
|
||||
<div class="fill"
|
||||
style="background-image:url({{ image(image_url|trim('/')).cropResize(848).guess(75) }}); background-position: center {{ travel_program_image.position }};"></div>
|
||||
</noscript>
|
||||
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<!-- Controls -->
|
||||
<a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
|
||||
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
|
||||
<span class="sr-only">Previous</span>
|
||||
</a>
|
||||
<a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
|
||||
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
|
||||
<span class="sr-only">Next</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</section><!-- end section -->
|
||||
|
||||
{#
|
||||
********* TAB BAR *********
|
||||
#}
|
||||
|
||||
{% block travel_program_tab_bar %}
|
||||
<div class="wrapper-nav-tabs">
|
||||
<ul class="nav nav-tabs nav-justified list-nav-tabs">
|
||||
<li class="active">
|
||||
<a href="#travel-description-content-tab" aria-controls="travel-description-content-tab"
|
||||
role="tab" data-toggle="tab" class="child-first">
|
||||
<span>1</span> Reiseablauf
|
||||
</a>
|
||||
</li>
|
||||
{% if travel_program.included is not empty or
|
||||
travel_program.excluded is not empty or
|
||||
travel_program.classDescription is not empty %}
|
||||
<li>
|
||||
<a href="#travel-service-content-tab" aria-controls="travel-service-content-tab"
|
||||
role="tab" data-toggle="tab" class="child-sec">
|
||||
<span>2</span> Leistungen
|
||||
</a>
|
||||
</li>
|
||||
|
||||
{% endif %}
|
||||
{% if travel_program.travelDates is not empty %}
|
||||
<li>
|
||||
<a href="#travel-dates-content-tab" aria-controls="travel-dates-content-tab" role="tab"
|
||||
data-toggle="tab" class="child-sec">
|
||||
<span>3</span> Termine <i class="fa fa-star faa-burst animated"></i> Preise
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if travel_program.hasMap %}
|
||||
<li>
|
||||
<a href="#travel-map-content-tab" aria-controls="travel-map-content-tab" role="tab"
|
||||
data-toggle="tab">
|
||||
Karte
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
<li>
|
||||
<a href="#travel-info-content-tab" aria-controls="travel-info-content-tab" role="tab"
|
||||
data-toggle="tab">
|
||||
Landinfos
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endblock travel_program_tab_bar %}
|
||||
|
||||
|
||||
<div class="tab-content">
|
||||
<div id="position-scroll-tab"></div>
|
||||
|
||||
{#
|
||||
********* REISEABLAUF *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane active" id="travel-description-content-tab">
|
||||
|
||||
{{ travel_program.htmlDescription|raw|keywords|lozad }}
|
||||
<br clear="all">
|
||||
|
||||
{% if (travel_program.advices is not empty) or (travel_program.generalnote is not empty) %}
|
||||
<h3>Hinweise</h3>
|
||||
<ul>
|
||||
{% if travel_program.generalnote is not empty %}
|
||||
{% for notes in travel_program.generalnote.text|trim|split('\n') %}
|
||||
{% if notes is not empty %}
|
||||
<li>{{ notes|raw }}</li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% for travel_program_advice in travel_program.advices|trim|split('\n') %}
|
||||
{% if travel_program_advice is not empty %}
|
||||
<li>{{ travel_program_advice|raw }}</li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
|
||||
{#
|
||||
********* LEISTUNGEN *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane" id="travel-service-content-tab">
|
||||
|
||||
<h2>Eingeschlossene Leistungen</h2>
|
||||
<ul>
|
||||
{% for travel_program_service in travel_program.included|replace({'*': '<img src="/bundles/app/images/star-mini.png" >'})|split('\n') %}
|
||||
<li>{{ travel_program_service|raw }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
{% if travel_program.classDescription is not empty %}
|
||||
{{ travel_program.classDescription|replace({'*': '<img src="/bundles/app/images/star-mini.png" >'})|raw }}
|
||||
{% endif %}
|
||||
|
||||
{% if travel_program.excluded is not empty %}
|
||||
<h2>Nicht eingeschlossene / zubuchbare Leistungen</h2>
|
||||
<ul>
|
||||
{% for travel_program_service in travel_program.excluded|replace({'*': '<img src="/bundles/app/images/star-mini.png" >'})|split('\n') %}
|
||||
<li>{{ travel_program_service|raw }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
|
||||
{#
|
||||
********* TERMINE UND PREISE *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane" id="travel-dates-content-tab">
|
||||
|
||||
<h2>{{ travel_program.subtitle }}</h2>
|
||||
|
||||
<div class="table-responsive" id="no-more-tables">
|
||||
|
||||
{% if travel_program.travelDates is not empty %}
|
||||
{% set has_three_bed_room = (travel_program.travelDates|first).prices[5] is defined %}
|
||||
{% set has_double_bed_room = (travel_program.travelDates|first).prices[3] is defined %}
|
||||
{% set has_singel_bed_room = (travel_program.travelDates|first).prices[1] is defined %}
|
||||
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Nr.</th>
|
||||
<th>Beginn <span class="small-table-show">- Ende</span></th>
|
||||
<th class="small-table-hidden">Ende</th>
|
||||
{% if has_three_bed_room %}
|
||||
<th>Preis p.P im Dreibettzimmer</th>{% endif %}
|
||||
{% if has_double_bed_room %}
|
||||
<th>Preis p.P im Doppelzimmer</th>{% endif %}
|
||||
{% if has_singel_bed_room %}
|
||||
<th>Preis p.P im Einzelzimmer</th>{% endif %}
|
||||
<th>Abflugorte / Zuschläge</th>
|
||||
<th>Verfügbarkeit</th>
|
||||
<th>Buchungsformular</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
{% set last_name = "" %}
|
||||
{% for travel_date in travel_program.travelDates if travel_date.status >= 0 %}
|
||||
|
||||
{% if last_name != travel_date.name %}
|
||||
{% set last_name = travel_date.name %}
|
||||
|
||||
{# @var travel_date \AppBundle\Entity\TravelDate #}
|
||||
<tr>
|
||||
<td data-title="Nr."><strong class="small">{{ travel_date.name }}</strong>
|
||||
</td>
|
||||
<td data-title="Beginn">{{ travel_date.start|date }} <span class="small-table-show">{{ travel_date.end|date }}</span></td>
|
||||
<td data-title="Ende" class="small-table-hidden">{{ travel_date.end|date }}</td>
|
||||
{% if has_three_bed_room %}
|
||||
<td data-title="Preis p.P. im Dreibettzimmer" class="price">
|
||||
{% if travel_date.prices[5] is defined %}
|
||||
{% if travel_date.prices[5].available == "1" %}
|
||||
{% if travel_date.prices[5] is defined %}
|
||||
|
||||
<span class="block">
|
||||
<span class="{% if travel_date.prices[5].effectiveDiscountPrice %}old_price{% endif %}">
|
||||
{% if travel_date.prices[5].effectiveDiscountPrice %}
|
||||
<i class="icons-percent"></i>
|
||||
{% endif %}
|
||||
ab {{ travel_date.prices[5].effectivePrice|number_format }} €
|
||||
</span>
|
||||
{% if travel_date.prices[5].effectiveDiscountPrice %}
|
||||
<span class="new_price">
|
||||
ab {{ travel_date.prices[5].effectiveDiscountPrice|number_format }}
|
||||
€
|
||||
</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
nicht verfügbar
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
{% if has_double_bed_room %}
|
||||
<td data-title="Preis p.P im Doppelzimmer" class="price">
|
||||
{% if travel_date.prices[3] is defined %}
|
||||
{% if travel_date.prices[3].available == "1" %}
|
||||
<span class="block">
|
||||
<span class="{% if travel_date.prices[3].effectiveDiscountPrice %}old_price{% endif %}">
|
||||
{% if travel_date.prices[3].effectiveDiscountPrice %}
|
||||
<i class="icons-percent"></i>
|
||||
{% endif %}
|
||||
ab {{ travel_date.prices[3].effectivePrice|number_format }} €
|
||||
</span>
|
||||
{% if travel_date.prices[3].effectiveDiscountPrice %}
|
||||
<span class="new_price">
|
||||
ab {{ travel_date.prices[3].effectiveDiscountPrice|number_format }}
|
||||
€
|
||||
</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
{% else %}
|
||||
nicht verfügbar
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
|
||||
{% if has_singel_bed_room %}
|
||||
<td data-title="Preis p.P im Einzelzimmer" class="price">
|
||||
{% if travel_date.prices[1] is defined %}
|
||||
{% if travel_date.prices[1].available == "1" %}
|
||||
<span class="block">
|
||||
<span class="{% if travel_date.prices[1].effectiveDiscountPrice %}old_price{% endif %}">
|
||||
{% if travel_date.prices[1].effectiveDiscountPrice %}
|
||||
<i class="icons-percent"></i>
|
||||
{% endif %}
|
||||
ab {{ travel_date.prices[1].effectivePrice|number_format }}
|
||||
€
|
||||
</span>
|
||||
{% if travel_date.prices[1].effectiveDiscountPrice %}
|
||||
<span class="new_price">
|
||||
ab {{ travel_date.prices[1].effectiveDiscountPrice|number_format }}
|
||||
€
|
||||
</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
{% else %}
|
||||
nicht verfügbar
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
<td data-title="Abflugorte / Zuschläge">
|
||||
<a href="#" class="btn btn-primary btn-sm border-radius st-slider-booking-btn" data-toggle="modal"
|
||||
data-target="#st-departures-modal-{{ loop.index0 }}">
|
||||
Flughäfen
|
||||
</a>
|
||||
|
||||
{% include 'default/components/departuresModal.html.twig' with {
|
||||
'departures': travel_date.departures,
|
||||
'id': loop.index0,
|
||||
'startWeekday': travel_date.startWeekday,
|
||||
'travelName': travel_date.name
|
||||
} %}
|
||||
</td>
|
||||
|
||||
{% if travel_date.effectiveStatus == 0 %}
|
||||
<td data-title="Verfügbarkeit" colspan="2">
|
||||
<div style="">
|
||||
<img src="/images/icons/available-{{ travel_date.effectiveStatus }}.png"
|
||||
style="height: 24px; width: 24px;vertical-align:middle"
|
||||
alt="">
|
||||
AUSGEBUCHT
|
||||
</div>
|
||||
|
||||
</td>
|
||||
{% else %}
|
||||
<td data-title="Verfügbarkeit">
|
||||
<div style="font-size: 0.95em">
|
||||
<img src="/images/icons/available-{{ travel_date.effectiveStatus }}.png"
|
||||
style="height: 24px; width: 24px;vertical-align:middle"
|
||||
alt="">
|
||||
{% if travel_date.effectiveStatus == 1 %}
|
||||
BUCHBAR
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 2 %}
|
||||
BUCHBAR
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 3 %}
|
||||
GARANTIERT
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 4 %}
|
||||
WENIGE PLÄTZE
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 5 %}
|
||||
NUR NOCH <span style="white-space: nowrap">1 PLATZ</span>
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 6 %}
|
||||
NUR NOCH <span style="white-space: nowrap">2 PLÄTZE</span>
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 7 %}
|
||||
NUR NOCH <span style="white-space: nowrap">3 PLÄTZE</span>
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 8 %}
|
||||
NUR NOCH <span style="white-space: nowrap">4 PLÄTZE</span>
|
||||
{% endif %}
|
||||
{% if travel_date.effectiveStatus == 9 %}
|
||||
NUR NOCH <span style="white-space: nowrap">5 PLÄTZE</span>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
</td>
|
||||
<td data-title="">
|
||||
<a href="{{ page.urlPath ~ '/buchen?nr=' ~ travel_date.name }}"
|
||||
class="btn btn-primary btn-md border-radius btn-booking-form"
|
||||
rel="nofollow"
|
||||
>
|
||||
<i class="fa fa-angle-double-right"></i> Buchungs-<br class="hidden"><span class="hidden" style="margin-left: 5px;"> </span>Formular
|
||||
</a>
|
||||
</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endif %}
|
||||
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
Momentan sind für dieses Programm keine Termine verfügbar.
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
|
||||
{#
|
||||
********* LANDKARTE *********
|
||||
#}
|
||||
|
||||
{% if travel_program.hasMap %}
|
||||
<div role="tabpanel" class="tab-pane" id="travel-map-content-tab">
|
||||
|
||||
{% if travel_program.mapHtml is not empty %}
|
||||
{{ travel_program.mapHtml|raw|stripslashes }}
|
||||
{% else %}
|
||||
<img src="{{ asset('/images/dummy.png') }}"
|
||||
data-src="/uploads/maps/{{ travel_program.mapImage ~ travel_program.mapImageExt }}"
|
||||
alt="Karte zum Reiseablauf" class="img-responsive lozad">
|
||||
<br clear="all">
|
||||
{% endif %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
{% endif %}
|
||||
|
||||
{#
|
||||
********* LANDINFOS *********
|
||||
#}
|
||||
|
||||
<div role="tabpanel" class="tab-pane" id="travel-info-content-tab">
|
||||
|
||||
{% for country in travel_program.countries %}
|
||||
|
||||
<h2>{{ country.name }}</h2>
|
||||
{{ country.htmlInformation|raw|lozad }}
|
||||
{% endfor %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
|
||||
</div>
|
||||
|
||||
{{ block('travel_program_tab_bar') }}
|
||||
</div>
|
||||
</section><!-- end section -->
|
||||
{% endblock body %}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<div id="section_order">
|
||||
<h1>{{ page.pagetitle|default(page.title) }}</h1>
|
||||
|
||||
<section class="clearfix" id="section_order_second">
|
||||
{{ page.content|keywords|raw|lozad }}
|
||||
</section>
|
||||
<section class="clearfix" id="section_order_first">
|
||||
{#{% for i in 0..page.children|length//3 %}#}
|
||||
<div class="row">
|
||||
{% for child_page in child_pages if child_page.status == 1 and child_page.travelProgram is not empty %}
|
||||
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
{% if mediated_child_pages is not empty %}
|
||||
|
||||
<h2>
|
||||
Vermittelte Rundreisen vom {{ page.country is not empty ? (page.country.name ~ '-') }}Spezialisten
|
||||
STERN TOURS aus Berlin
|
||||
</h2>
|
||||
|
||||
<div class="row">
|
||||
{% for child_page in mediated_child_pages %}
|
||||
|
||||
{% include 'default/components/pageBox.html.twig' %}
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</section>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
<h1>{{ travel_program.title|default(page.pagetitle)|default(page.title) }}</h1>
|
||||
<h2 style="color: #666">{{ travel_program.subtitle }}</h2>
|
||||
|
||||
{{ travel_program.htmlDescription|raw|keywords }}
|
||||
|
||||
<h2>Eingeschlossene Leistungen</h2>
|
||||
<ul>
|
||||
{% for travel_program_service in travel_program.included|split('\n') %}
|
||||
<li>{{ travel_program_service|raw }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
{% if travel_program.classDescription is not empty %}
|
||||
{{ travel_program.classDescription|raw }}
|
||||
{% endif %}
|
||||
|
||||
{% if travel_program.excluded is not empty %}
|
||||
<h2>Nicht eingeschlossene / zubuchbare Leistungen</h2>
|
||||
<ul>
|
||||
{% for travel_program_service in travel_program.excluded|split('\n') %}
|
||||
<li>{{ travel_program_service|raw }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
||||
{% if (travel_program.advices is not empty) or (travel_program.generalnote is not empty) %}
|
||||
<h3>Hinweise</h3>
|
||||
<ul>
|
||||
{% if travel_program.generalnote is not empty %}
|
||||
{% for notes in travel_program.generalnote.text|trim|split('\n') %}
|
||||
{% if notes is not empty %}
|
||||
<li>{{ notes|raw }}</li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% for travel_program_advice in travel_program.advices|trim|split('\n') %}
|
||||
{% if travel_program_advice is not empty %}
|
||||
<li>{{ travel_program_advice|raw }}</li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
{% extends get_base_template() %}
|
||||
|
||||
{% block body %}
|
||||
<section class="clearfix">
|
||||
{% embed 'default/components/ttBodySearchForm.html.twig' %}
|
||||
{% block tt_body_search_form_submit %}
|
||||
<div class="form-group col-md-12 col-sm-12 col-xs-12 text-center form-bottom">
|
||||
<button type="submit" class="btn btn-primary">suchen</button>
|
||||
</div>
|
||||
{% endblock %}
|
||||
{% endembed %}
|
||||
</section>
|
||||
|
||||
<section class="clearfix">
|
||||
{{ page.content|raw|keywords|lozad }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
Loading…
Add table
Add a link
Reference in a new issue