06 Feb
|
|
@ -20,20 +20,10 @@
|
|||
<link rel="apple-touch-icon" href="/bundles/app/images/apple-icon.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="/bundles/app/images/apple-icon-72x72.png" />
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="/bundles/app/images/apple-icon-114x114.png" />
|
||||
<link rel="stylesheet" href="{{ asset('css/my-custom.css?v') }}{{ get_file_last_time('css/my-custom.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/my-custom.css?v') }}{{ get_file_last_time('css/my-custom.css') }}">
|
||||
|
||||
{% block stylesheets %}
|
||||
{% stylesheets
|
||||
'bundles/app/css/bootstrap-3.3.7.css'
|
||||
filter='cssrewrite'
|
||||
%}
|
||||
<link rel="stylesheet" href="{{ asset_url }}"/>
|
||||
{% endstylesheets %}
|
||||
{% stylesheets
|
||||
'bundles/app/css/custom.css'
|
||||
filter='cssrewrite'
|
||||
%}
|
||||
<link rel="stylesheet" href="{{ asset_url }}"/>
|
||||
{% endstylesheets %}
|
||||
{% stylesheets
|
||||
'bundles/app/css/daterangepicker.css'
|
||||
filter='cssrewrite'
|
||||
|
|
@ -48,7 +38,10 @@
|
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
|
||||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
<script src="{{ asset('/bundles/app/js/jquery-3.1.1.js') }}"></script>
|
||||
<script src="{{ asset('js/custom-min.js?v') }}{{ get_file_last_time('js/custom-min.js') }}"></script>
|
||||
<script src="{{ asset('js/fewoBooking-min.js?v') }}{{ get_file_last_time('js/fewoBooking-min.js') }}"></script>
|
||||
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -116,19 +109,7 @@
|
|||
|
||||
{#TODO ausmisten und im gleichen zuge das CSS für den Datepicker einfügen#}
|
||||
{% block javascripts %}
|
||||
{% javascripts
|
||||
'@AppBundle/Resources/public/js/jquery-ui-1.12.1.js'
|
||||
'@AppBundle/Resources/public/js/bootstrap-3.3.7.js'
|
||||
'@AppBundle/Resources/public/js/jquery.prettyPhoto-3.1.6.js'
|
||||
'@AppBundle/Resources/public/js/parallax.js'
|
||||
'@AppBundle/Resources/public/js/owl.carousel-2.2.0.js'
|
||||
'@AppBundle/Resources/public/js/bootstrap-select-1.12.0.js'
|
||||
'@AppBundle/Resources/public/vendor/daterangepicker/moment.min.js'
|
||||
'@AppBundle/Resources/public/vendor/daterangepicker/daterangepicker.js'
|
||||
'@AppBundle/Resources/public/js/custom.js'
|
||||
%}
|
||||
<script src="{{ asset_url }}"></script>
|
||||
{% endjavascripts %}
|
||||
|
||||
{% endblock javascripts %}
|
||||
|
||||
</body>
|
||||
|
|
|
|||
|
|
@ -34,25 +34,15 @@
|
|||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
||||
<!-- Favicons -->
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="/images/apple-icon-57x57.png">
|
||||
<link rel="apple-touch-icon" sizes="60x60" href="/images/apple-icon-60x60.png">
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="/images/apple-icon-72x72.png">
|
||||
<link rel="apple-touch-icon" sizes="76x76" href="/images/apple-icon-76x76.png">
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="/images/apple-icon-114x114.png">
|
||||
<link rel="apple-touch-icon" sizes="120x120" href="/images/apple-icon-120x120.png">
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="/images/apple-icon-144x144.png">
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="/images/apple-icon-152x152.png">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/images/apple-icon-180x180.png">
|
||||
<link rel="icon" type="image/png" sizes="192x192" href="/images/android-icon-192x192.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/images/favicon-96x96.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16.png">
|
||||
<link rel="manifest" href="/manifest.json">
|
||||
<meta name="msapplication-TileColor" content="#ffffff">
|
||||
<meta name="msapplication-TileImage" content="/images/ms-icon-144x144.png">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||
<link rel="manifest" href="/site.webmanifest">
|
||||
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
|
||||
<meta name="msapplication-TileColor" content="#da532c">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
|
||||
|
||||
{% block canonical_tag %}
|
||||
{% if canonical_url is not defined and page is defined %}
|
||||
{% if page.canonicalUrl is not empty %}
|
||||
|
|
@ -110,7 +100,7 @@
|
|||
|
||||
{% block header2 %}
|
||||
<section class="section fullscreen background lozad" data-background-image="/bundles/app/images/travel/header-top-image3.jpg" style="background-image:url({{ asset('images/placeholder-image.png') }});">
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-12 col-xs-12">
|
||||
<div class="home-message text-center small">
|
||||
|
|
@ -133,7 +123,7 @@
|
|||
|
||||
{# #TODO additional section classes if not home #}
|
||||
<section class="section clearfix">
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div id="fullwidth" class="col-sm-12">
|
||||
|
||||
|
|
@ -157,7 +147,7 @@
|
|||
offers_sidebar_widget_block: block('offers_sidebar_widget') ?? null,
|
||||
feedbacks_sidebar_widget_block: block('feedbacks_sidebar_widget') ?? null,
|
||||
} %}
|
||||
<div id="content" class="col-md-9 col-sm-8 col-xs-12">
|
||||
<div id="content" class="col-md-9 col-sm-12 col-xs-12">
|
||||
{% block body %}{% endblock %}
|
||||
</div><!-- end col -->
|
||||
</div><!-- end row -->
|
||||
|
|
@ -170,8 +160,12 @@
|
|||
|
||||
{% include 'default/components/footer.html.twig' %}
|
||||
|
||||
</div><!-- end wrapper -->
|
||||
|
||||
<a class="js-go-to u-go-to-v1 animated" href="#!" data-type="fixed" data-offset-top="400" data-show-effect="zoomIn" data-hide-effect="zoomOut" data-position='{"bottom": 15, "right": 15 }'>
|
||||
<i class="icon-up-open-big"></i>
|
||||
</a>
|
||||
|
||||
</div><!-- end wrapper -->
|
||||
<!-- default modal -->
|
||||
{% embed 'default/components/embed/modal.html.twig' with {id: 'default'} %}{% endembed %}
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
{{ form_row(form.file, {label: 'Bild'}) }}
|
||||
{% else %}
|
||||
<div>
|
||||
<img src="{{ asset('uploads/images/' ~ image_file_name) }}" alt="{{ image.description }}" style="width:456px;height:151px;" >
|
||||
<img src="{{ asset('uploads/images/' ~ image_file_name) }}" alt="{{ image.description }}" style="height:250px;" >
|
||||
</div>
|
||||
{% endif %}
|
||||
{{ form_row(form.fileName, {label: 'Name'}) }}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
{% for image in lodgingGroup.images %}
|
||||
{% if image.comp == 'pre' %}
|
||||
<tr>
|
||||
<td><img src="{{ asset('uploads/images/' ~ image.file) }}" alt="{{ image.description }}" style="width:228px;height:75px;" ></td>
|
||||
<td><img src="{{ asset('uploads/images/' ~ image.file) }}" alt="{{ image.description }}" style="height:80px;" ></td>
|
||||
<td>{{ image.pos }}</td>
|
||||
<td>{{ image.fileName }}</td>
|
||||
<td>{{ image.description }}</td>
|
||||
|
|
@ -85,7 +85,7 @@
|
|||
{% for image in lodgingGroup.images %}
|
||||
{% if image.comp == 'post' %}
|
||||
<tr>
|
||||
<td><img src="{{ asset('uploads/images/' ~ image.file) }}" alt="{{ image.description }}" style="width:228px;height:75px;" ></td>
|
||||
<td><img src="{{ asset('uploads/images/' ~ image.file) }}" alt="{{ image.description }}" style="height:80px;" ></td>
|
||||
<td>{{ image.pos }}</td>
|
||||
<td>{{ image.fileName }}</td>
|
||||
<td>{{ image.description }}</td>
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
<div class="row" style="">
|
||||
{% endif %}
|
||||
|
||||
|
||||
<div class="col-xs-12 col-sm-6">
|
||||
<table class="table calendar-table">
|
||||
<thead>
|
||||
|
|
@ -66,8 +67,10 @@
|
|||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% if counter%2 == 0 %}
|
||||
{% if counter%2 == 0 or calendar|length ==counter %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
|
||||
|
||||
{% endfor %}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,54 @@
|
|||
{% if(isPossible) %}
|
||||
<table class="st-booking-table">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="st-position-price-col">
|
||||
+ {{ total_price_per_night|number_format(2) }} €
|
||||
Datum:
|
||||
</td>
|
||||
<td class="st-position-name-col">
|
||||
({{ fewo_booking_request.numberDays }} {{ fewo_booking_request.numberDays < 2 ? 'Nacht' : 'Nächte' }} x {{ fewo_price.perNight|number_format(2) }} €)
|
||||
{{ fewo_booking_request.fromDate|date }} - {{ fewo_booking_request.toDate|date }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"><hr style="margin-top: 0; margin-bottom: 0"></td>
|
||||
</tr>
|
||||
|
||||
{% for season, values in priceResult.season %}
|
||||
<tr>
|
||||
<td class="st-position-price-col">
|
||||
Saison:
|
||||
</td>
|
||||
<td class="st-position-name-col">
|
||||
{{ season }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="st-position-price-col">
|
||||
+ {{ fewo_price.flatPrice|number_format(2) }} €
|
||||
Mindestbelegung:
|
||||
</td>
|
||||
<td class="st-position-name-col">
|
||||
{{ values.minimumStay }} {{ values.minimumStay < 2 ? 'Nacht' : 'Nächte' }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td class="st-position-price-col">
|
||||
+ {{ values.price|number_format(2) }} €
|
||||
</td>
|
||||
<td class="st-position-name-col">
|
||||
{{ values.numberDays }} {{ values.numberDays < 2 ? 'Nacht' : 'Nächte' }} x {{ values.perNight|number_format(2) }} €
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="2"><hr style="margin-top: 0; margin-bottom: 0"></td>
|
||||
</tr>
|
||||
|
||||
{% endfor %}
|
||||
<tr>
|
||||
<td class="st-position-price-col">
|
||||
+ {{ priceResult.flatPrice|number_format(2) }} €
|
||||
</td>
|
||||
<td class="st-position-name-col">
|
||||
Service-Gebühr
|
||||
|
|
@ -18,7 +56,7 @@
|
|||
</tr>
|
||||
<tr>
|
||||
<td class="st-position-price-col">
|
||||
+ {{ fewo_lodging.deposit|number_format(2) }} €
|
||||
+ {{ priceResult.deposit|number_format(2) }} €
|
||||
</td>
|
||||
<td class="st-position-name-col">
|
||||
Kaution
|
||||
|
|
@ -26,9 +64,15 @@
|
|||
</tr>
|
||||
<tr class="st-total-tr">
|
||||
<td class="st-position-price-col">
|
||||
<span class="st-total-price">= {{ total_price|number_format(2) }} €</span>
|
||||
<span class="st-total-price">= {{ priceResult.total_price|number_format(2) }} €</span>
|
||||
</td>
|
||||
<td class="st-position-name-col">Gesamtpreis der Reise</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
|
||||
Leider ist der gewünschter Zeitraum ist nicht buchbar.<br>
|
||||
Bitte ändern Sie das Datum, rote Felder sind bereits gebucht.
|
||||
|
||||
{% endif %}
|
||||
|
|
@ -20,13 +20,14 @@
|
|||
{# @var departure \AppBundle\Entity\TravelDeparturePoint #}
|
||||
<tr>
|
||||
<td style="text-align: left">
|
||||
{% if departure.flightTime[startWeekday] is defined %}
|
||||
{% if departure.flightTime is defined %}
|
||||
{% if departure.flightTime.startWeekday is defined %}
|
||||
{% if departure.flightTime[startWeekday] != "" %}
|
||||
<a href="#" data-toggle="collapse" data-target="#flight_{{ travelName }}_{{ departure.id }}" class="pull-right collapsed">Flugzeiten <i class="fa fa-plus"></i></a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
<h4>{{ departure.name }}</h4>
|
||||
{% if departure.flightTime[startWeekday] is defined %}
|
||||
{% if departure.flightTime.startWeekday is defined %}
|
||||
<div class="collapse" id="flight_{{ travelName }}_{{ departure.id }}" style="">
|
||||
{% for flightTime in departure.flightTime[startWeekday]|split('\n') %}
|
||||
{% if flightTime != "" %}
|
||||
|
|
@ -35,6 +36,7 @@
|
|||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>{{ departure.extraCharge|number_format(2) }} €</td>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<header class="header fixedheader setbg sticky">
|
||||
<div class="topbar">
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
<div class="pull-right">
|
||||
<ul class="topbar-drops list-inline">
|
||||
<li class="nohover visible-xs visible-sm"> Mo-Fr: 09:00 - 22:00 | Sa: 10:00 - 22:00 | So: 11:00 - 22:00 Uhr</li>
|
||||
|
|
@ -19,7 +19,7 @@
|
|||
</div><!-- end topbar -->
|
||||
|
||||
<div class="menu-container">
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
<div class="menu-wrapper">
|
||||
<nav id="navigation" class="navbar" role="navigation" itemscope
|
||||
itemtype="https://schema.org/SiteNavigationElement">
|
||||
|
|
@ -93,7 +93,7 @@
|
|||
<div id="header" class="sticky clearfix">
|
||||
<!-- TOP NAV -->
|
||||
<header id="topNav">
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
|
||||
<div class="navbar-collapse nav-main-collapse collapse submenu-dark">
|
||||
<nav class="nav-main">
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
<section class="section fullscreen background start-slider">
|
||||
<div class="absolute-section">
|
||||
<div class="container">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-12 col-xs-12">
|
||||
<div class="home-message text-center">
|
||||
|
|
@ -57,7 +57,7 @@
|
|||
|
||||
<section class="nopadding">
|
||||
<div class="container-full absolute">
|
||||
<div class="container container-form">
|
||||
<div class="container-fluid container-form">
|
||||
<div class="home-form">
|
||||
<!-- Nav tabs
|
||||
Hier bitte die Tabs über Parameter Steuer, wenn JS aus.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{# @var child_page \AppBundle\Entity\Page #}
|
||||
<div class="col-md-4 col-sm-4">
|
||||
<div class="col-md-4 col-sm-6">
|
||||
<div class="travel-wrapper get-box-link">
|
||||
<div class="item text-left">
|
||||
<div class="item-img">
|
||||
|
|
|
|||
|
|
@ -1,13 +1,15 @@
|
|||
|
||||
{# @var page \AppBundle\Entity\Page #}
|
||||
<div id="sidebar" class="col-md-3 col-sm-4 col-xs-12">
|
||||
|
||||
|
||||
<div id="sidebar" class="col-md-3 col-sm-12 col-xs-12">
|
||||
<div class="row">
|
||||
<div class="col-sm-6 col-md-12">
|
||||
{% if show_nav_sidebar_about is not defined %}
|
||||
<div id="show_sterntours_video_sidebar" class="widget clearfix">
|
||||
<div class="widget-title">
|
||||
Wir: STERN TOURS
|
||||
<a class="collapse-widget {{ (app.request.get('_open_side_about')) }}" href="#about-widget" data-toggle="collapse" aria-expanded="true">Wir: STERN TOURS
|
||||
</a>
|
||||
</div><!-- end title -->
|
||||
<div class="boxwidget">
|
||||
<div class="boxwidget collapse in {{ (app.request.get('_open_side_about')) }}" id="about-widget" aria-expanded="true">
|
||||
<div class="video-wrap">
|
||||
<div class="g-absolute-centered">
|
||||
<a data-type="youtube_sterntours_video" data-src="https://www.youtube-nocookie.com/embed/Rpo5py2fjrg" href="javascript:;">
|
||||
|
|
@ -19,6 +21,7 @@
|
|||
</div>
|
||||
</div><!-- end boxwidget -->
|
||||
</div><!-- end widget -->
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if show_search_sidebar_widget ?? true %}
|
||||
|
|
@ -42,6 +45,7 @@
|
|||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if show_nav_sidebar_widget ?? true and page is defined %}
|
||||
{% if nav_sidebar_widget_block is null %}
|
||||
{{ render(controller('AppBundle:Component:navSidebarWidget', {page: page})) }}
|
||||
|
|
@ -52,15 +56,14 @@
|
|||
|
||||
<div class="widget clearfix hidden-xs">
|
||||
<div class="widget-title">
|
||||
TOP bewertet
|
||||
<a class="collapse-widget" href="#top-widget" data-toggle="collapse" aria-expanded="true">TOP bewertet
|
||||
</a>
|
||||
</div><!-- end title -->
|
||||
<div class="boxwidget">
|
||||
<div class="boxwidget collapse in" id="top-widget" aria-expanded="true">
|
||||
<a href="http://www.netzsieger.de/e/stern-tours" target="_blank" rel="nofollow"><img
|
||||
src="{{ asset('images/netzsieger.png') }}" alt="Netzsieger.de bewertet STERN TOURS">
|
||||
</a>
|
||||
</div><!-- end boxwidget -->
|
||||
|
||||
<div class="boxwidget">
|
||||
<!-- Ausgezeichnet.org-Siegel: Begin -->
|
||||
<div id="auorg-bg"><a href="https://www.ausgezeichnet.org" target="_blank"
|
||||
title="Unabhängige Bewertungen, Kundenbewertungen und Gütesiegel von AUSGEZEICHNET.ORG"
|
||||
|
|
@ -69,8 +72,6 @@
|
|||
</a></div>
|
||||
<script type="text/javascript"
|
||||
src="//siegel.ausgezeichnet.org/widgets/js/55b648290cf257aef3483d90/widget.js"></script>
|
||||
<!-- Ausgezeichnet.org-Siegel: End -->
|
||||
</div><!-- end boxwidget -->
|
||||
|
||||
{% if show_seal_of_approval is defined %}
|
||||
<div class="boxwidget">
|
||||
|
|
@ -79,19 +80,18 @@
|
|||
</div><!-- end boxwidget -->
|
||||
{% endif %}
|
||||
|
||||
<!-- Ausgezeichnet.org-Siegel: End -->
|
||||
</div><!-- end boxwidget -->
|
||||
|
||||
|
||||
|
||||
{#<div class="boxwidget">
|
||||
<div itemscope itemtype="https://data-vocabulary.org/Review-aggregate">
|
||||
<span itemprop="itemreviewed">STERN TOURS Online-Shop</span><br>
|
||||
<span itemprop="rating" itemscope itemtype="https://data-vocabulary.org/Rating">
|
||||
<span itemprop="average">4.90</span> / <span itemprop="best">5</span>
|
||||
</span>
|
||||
bei <span itemprop="count">78</span> Bewertungen
|
||||
</div>
|
||||
</div>#}
|
||||
|
||||
</div><!-- end widget -->
|
||||
|
||||
</div>
|
||||
<div class="col-sm-6 col-md-12">
|
||||
|
||||
|
||||
{% if (show_feedbacks_sidebar_widget ?? true) and page is defined and page.effectiveCountry is not empty
|
||||
and page.effectiveCountry.feedbackPage is not empty %}
|
||||
{% if feedbacks_sidebar_widget_block is null %}
|
||||
|
|
@ -125,4 +125,11 @@
|
|||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
|
||||
<hr class="visible-sm visible-xs">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- end col -->
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
{% if nav_pages %}
|
||||
<div class="widget clearfix">
|
||||
|
||||
<div class="widget-title visible-xs">
|
||||
|
||||
<div class="widget-title">
|
||||
<a class="collapse-widget" href="#side-navigation" data-toggle="collapse">Reiseprogramme</a>
|
||||
</div><!-- end title -->
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,9 @@
|
|||
<div class="widget clearfix hidden-xs">
|
||||
|
||||
<div class="widget-title">
|
||||
{{ slider_title }}
|
||||
<a class="collapse-widget" href="#{{ target_widget }}" data-toggle="collapse" aria-expanded="true">{{ slider_title }}</a>
|
||||
</div><!-- end title -->
|
||||
<div class="boxwidget collapse in" id="{{ target_widget }}" aria-expanded="true">
|
||||
|
||||
<div class="box-slider">
|
||||
{% for page in pages %}
|
||||
|
|
@ -36,6 +37,7 @@
|
|||
<a href="javascript:void(0);" class="item-button-next">weiter</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- end widget -->
|
||||
{% endif %}
|
||||
|
|
@ -2,8 +2,9 @@
|
|||
<div class="widget clearfix hidden-xs">
|
||||
|
||||
<div class="widget-title">
|
||||
{{ slider_title }}
|
||||
<a class="collapse-widget" href="#{{ target_widget }}" data-toggle="collapse" aria-expanded="true">{{ slider_title }}</a>
|
||||
</div><!-- end title -->
|
||||
<div class="boxwidget collapse in" id="{{ target_widget }}" aria-expanded="true">
|
||||
|
||||
<div class="box-slider newswidget clearfix{{ theme|default('normal') == 'gray-box' ? ' gray-box' }}">
|
||||
|
||||
|
|
@ -20,6 +21,7 @@
|
|||
</div>
|
||||
|
||||
</div><!-- end newswidget -->
|
||||
</div>
|
||||
|
||||
</div><!-- end widget -->
|
||||
{% endif %}
|
||||
|
|
@ -53,7 +53,7 @@ E-Mail: {{ booking_request.email ?? 'keine Angabe' }}
|
|||
|
||||
=====================================================================================
|
||||
Reiseteilnehmer:
|
||||
Zimmernummer, Zimmertyp, Geschlecht, Vorname, Nachname, Geburtsdatum
|
||||
Nr., Zimmertyp, Geschlecht, Vorname, Nachname, Geburtsdatum
|
||||
=====================================================================================
|
||||
{% set travelerIndex = 0 %}
|
||||
{% set travelerCollection = booking_request.travelers|slice(0, (booking_request.travelerCount + booking_request.childrenCount)) %}
|
||||
|
|
|
|||
|
|
@ -1,34 +1,40 @@
|
|||
{# @var fewo_booking_request \AppBundle\Entity\FewoBookingRequest #}
|
||||
{# @var fewo_lodging \AppBundle\Entity\FewoLodging #}
|
||||
{# @var fewo_price \AppBundle\Entity\FewoPrice #}
|
||||
=====================================================================================
|
||||
Reisedaten:
|
||||
=====================================================================================
|
||||
Ferienwohnung: {{ fewo_lodging.name }}
|
||||
Saison: {{ fewo_price.season.name }}
|
||||
=======================================================
|
||||
Ihre Reisedaten
|
||||
Reisezeitraum: {{ fewo_booking_request.fromDate|date }} - {{ fewo_booking_request.toDate|date }}
|
||||
Ferienwohnung: {{ fewo_lodging.name }}
|
||||
=======================================================
|
||||
|
||||
Gesamtpreis: {{ fewo_booking_request.totalPrice|number_format(2) }} €
|
||||
{% for season, values in priceResult.season %}
|
||||
* Saison: {{ season }}
|
||||
* Mindestbelegung: {{ values.minimumStay }} {{ values.minimumStay < 2 ? 'Nacht' : 'Nächte' }}
|
||||
* Preis: {{ values.price|number_format(2) }} € / {{ values.numberDays }} {{ values.numberDays < 2 ? 'Nacht' : 'Nächte' }} x {{ values.perNight|number_format(2) }} €
|
||||
---------------------------------------------------------------------------
|
||||
{% endfor %}
|
||||
* Service-Gebühr: + {{ priceResult.flatPrice|number_format(2) }} €
|
||||
* Kaution: + {{ priceResult.deposit|number_format(2) }} €
|
||||
---------------------------------------------------------------------------
|
||||
* Gesamtpreis: {{ priceResult.total_price|number_format(2) }} €
|
||||
|
||||
=====================================================================================
|
||||
Reiseanmelder{% if fewo_booking_request.salutation == 2 %}in{% endif %}
|
||||
=======================================================
|
||||
Reiseanmelder: {% if fewo_booking_request.salutation == 2 %}in{% endif %}
|
||||
|
||||
=====================================================================================
|
||||
Vorname: {{ fewo_booking_request.firstName }}
|
||||
Nachname: {{ fewo_booking_request.lastName }}
|
||||
Adresse: {{ fewo_booking_request.streetAddress }}
|
||||
PLZ: {{ fewo_booking_request.zipCode }}
|
||||
Ort: {{ fewo_booking_request.city }}
|
||||
Telefonnummer: {{ fewo_booking_request.phone }}
|
||||
Fax: {{ fewo_booking_request.fax ?? 'keine Angabe' }}
|
||||
E-Mail: {{ fewo_booking_request.email ?? 'keine Angabe' }}
|
||||
|
||||
=====================================================================================
|
||||
* Vorname: {{ fewo_booking_request.firstName }}
|
||||
* Nachname: {{ fewo_booking_request.lastName }}
|
||||
* Adresse: {{ fewo_booking_request.streetAddress }}
|
||||
* PLZ: {{ fewo_booking_request.zipCode }}
|
||||
* Ort: {{ fewo_booking_request.city }}
|
||||
* Telefon: {{ fewo_booking_request.phone }}
|
||||
* Fax: {{ fewo_booking_request.fax ?? 'keine Angabe' }}
|
||||
* E-Mail: {{ fewo_booking_request.email ?? 'keine Angabe' }}
|
||||
|
||||
=======================================================
|
||||
Reiseteilnehmer: {{ fewo_booking_request.travelerCount }}
|
||||
=====================================================================================
|
||||
=====================================================================================
|
||||
=======================================================
|
||||
Mitteilungen / Sonstiges:
|
||||
=====================================================================================
|
||||
{{ fewo_booking_request.notes ?? '-' }}
|
||||
|
||||
|
||||
=======================================================
|
||||
|
|
|
|||
|
|
@ -1,11 +1,15 @@
|
|||
{# @var fewo_booking_request \AppBundle\Entity\FewoBookingRequest #}
|
||||
Sehr geehrte{{ fewo_booking_request.salutation == 1 ? 'r Herr' : ' Frau' }} {{ fewo_booking_request.lastName }},
|
||||
|
||||
vielen Dank für Ihren Buchungsauftrag. Dieser wird schnellstmöglich bearbeitet und stellt noch keine{#
|
||||
#} Buchungsbestätigung dar. Bitte prüfen Sie noch einmal Ihre Angaben und kontaktieren Sie uns bitte, wenn ein Fehler{#
|
||||
#} enthalten ist.
|
||||
|
||||
vielen Dank für Ihren Auftrag, folgende Ferienwohnung wurde gemietet:
|
||||
|
||||
{% include 'default/email/components/fewoBookingSummary.txt.twig' %}
|
||||
|
||||
Bitte prüfen Sie noch einmal Ihre Angaben und kontaktieren Sie uns bitte, wenn ein Fehler enthalten ist.
|
||||
|
||||
{% include 'default/email/components/signature.txt.twig' %}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
FOLGENDE REISE WURDE GEBUCHT:
|
||||
Folgende Wohnung wurde gemietet
|
||||
|
||||
URL: {{ lodging_url }}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,21 +7,10 @@
|
|||
{% endblock %}
|
||||
{% block canonical_tag %}{% if app.debug %}<!-- Die canonical URL wird für diese Seite bewusst nicht definiert, da sie vom Suchindex ausgeschlossen wurde (Siehe meta robots) -->{% endif %}{% endblock %}
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ parent() }}
|
||||
{% stylesheets 'bundles/app/css/booking.css' filter='cssrewrite' %}
|
||||
<link rel="stylesheet" href="{{ asset_url }}"/>
|
||||
{% endstylesheets %}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{% javascripts '@AppBundle/Resources/public/js/booking.js' %}
|
||||
<script src="{{ asset_url }}"></script>
|
||||
{% endjavascripts %}
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
|
||||
<section class="clearfix">
|
||||
|
||||
<div class="content-copy">
|
||||
|
|
@ -227,7 +216,6 @@
|
|||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
{% if extraDays == 1 and travel_program.drafts.count() > 0 %}
|
||||
<tr>
|
||||
{% else %}
|
||||
|
|
@ -235,12 +223,12 @@
|
|||
{% endif %}
|
||||
<td>Verlängerung buchen</td>
|
||||
<td>
|
||||
Vor der Reise
|
||||
Vor der Reise im Rundreisehotel oder auf Wunsch in einem anderen Hotel der gebuchten Preiskategorie in Tel Aviv oder Jerusalem
|
||||
{{ form_widget(form.extraBookingDaysBefore) }}
|
||||
{{ form_errors(form.extraBookingDaysBefore) }}
|
||||
<br>
|
||||
|
||||
Nach der Reise
|
||||
Nach der Reise im Rundreisehotel oder auf Wunsch in einem anderen Hotel der gebuchten Preiskategorie in Tel Aviv oder Jerusalem
|
||||
{{ form_widget(form.extraBookingDaysAfter) }}
|
||||
{{ form_errors(form.extraBookingDaysAfter) }}
|
||||
|
||||
|
|
@ -298,25 +286,20 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Die gewünschte Zahlungsart (Überweisung, Kreditkarten) stimmen wir mit Ihnen im Anschluss an Ihre Buchung ab.
|
||||
{% if(travel_program.category.id != 1) %}
|
||||
Abweichend von den Anzahlungsbedingungen Ziffer 2.1 gelten hier besondere Anzahlungsbedingungen wie folgt: Fluganteil 100 % und Landleistung 20%. Abweichend von den allgemeinen Stornobedingungen Ziffer 4.3a gelten hier besondere Stornobedingungen (Ziffer 4.3b) wie folgt: Fluganteil 100 % und Landleistung gemäß Ziffer 4.3a allgemeine Stornobedingungen.</p>
|
||||
Abweichend von den Anzahlungsbedingungen Ziffer 2.1 gelten hier besondere Anzahlungsbedingungen wie folgt: Fluganteil 100% und Landleistung 20%. Abweichend von den allgemeinen Stornobedingungen Ziffer 4.3a gelten hier besondere Stornobedingungen (Ziffer 4.3b) wie folgt: Fluganteil 100% und Landleistung gemäß Ziffer 4.3a allgemeine Stornobedingungen.
|
||||
{% endif %}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="form-box">
|
||||
<div class="">
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<h5>Flugdaten</h5>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<div class="accordion-toggle-2">
|
||||
<div class="panel-group" id="accordion_fd">
|
||||
|
|
@ -325,7 +308,6 @@
|
|||
</a>
|
||||
<div id="collapse_fd" class="panel-collapse collapse" aria-expanded="true" style="">
|
||||
<div class="panel-body">
|
||||
|
||||
{% for departure in travel_date.departures %}
|
||||
{# @var departure \AppBundle\Entity\TravelDeparturePoint #}
|
||||
{% if departure.flightTime[travel_date.startWeekday] is defined %}
|
||||
|
|
@ -342,7 +324,6 @@
|
|||
<div class="" id="no_flight_time" style="display: none;">
|
||||
<p>Die Flugdaten sind zum Zeitpunkt der Ausschreibung noch nicht bekannt und daher werden wir Ihnen diese mit der Annahme vom Buchungsauftrag mitteilen.</p>
|
||||
</div>
|
||||
|
||||
<div class="" id="yes_flight_time" style="display: none;">
|
||||
<h3>Hinweis</h3>
|
||||
<p>Flugzeiten können um 1 Std. variieren durch Sommer-/Winterzeit.</p>
|
||||
|
|
@ -351,8 +332,6 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ul>
|
||||
|
||||
</div><!-- accordion -->
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -369,14 +348,31 @@
|
|||
|
||||
<ul class="c1">
|
||||
{% for travel_program_date in travel_program_dates if travel_program_date.count < 1 %}
|
||||
|
||||
<div id="extraDaysProgramBefore_show" style="display: none;">
|
||||
<li>
|
||||
<span id="extraDaysProgramBefore_date" data-org-date="{{ travel_program_date.date }}">{{ travel_program_date.date }}</span> : Reiseverlängerung vor der Reise - {{ travel_program_date.day|raw }}
|
||||
{% if travel_program_date.night is defined %}
|
||||
<br>Übernachtung : Reiseverlängerung im Rundreisehotel oder auf Wunsch in einem anderen Hotel der gebuchten Preiskategorie in Tel Aviv oder Jerusalem
|
||||
{% endif %}
|
||||
</li>
|
||||
<li>
|
||||
{{ travel_program_date.date }} : Start {{ travel_program.title }}
|
||||
{% if travel_program_date.night is defined %}
|
||||
<br>Übernachtung : {{ travel_program_date['night']|raw }}
|
||||
{% endif %}
|
||||
</li>
|
||||
</div>
|
||||
<div id="extraDaysProgramBefore_hide">
|
||||
<li>
|
||||
{{ travel_program_date.date }} : {{ travel_program_date.day|raw }}
|
||||
{% if travel_program_date.night is defined %}
|
||||
<br>Übernachtung : {{ travel_program_date['night']|raw }}
|
||||
{% endif %}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
{% endfor %}
|
||||
<div class="accordion-toggle-2">
|
||||
<div class="panel-group" id="accordion_pd">
|
||||
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion_pd" href="#collapse_pd" aria-expanded="true">
|
||||
|
|
@ -384,14 +380,33 @@
|
|||
</a>
|
||||
<div id="collapse_pd" class="panel-collapse collapse" aria-expanded="true" style="">
|
||||
<div class="panel-body">
|
||||
|
||||
{% for travel_program_date in travel_program_dates if travel_program_date.count > 0 %}
|
||||
{% if travel_program_dates|length != travel_program_date.count +1 %}
|
||||
<li>
|
||||
{{ travel_program_date.date }} : {{ travel_program_date.day|raw }}
|
||||
{% if travel_program_date.night is defined %}
|
||||
<br>Übernachtung : {{ travel_program_date['night']|raw }}
|
||||
{% endif %}
|
||||
</li>
|
||||
{% else %}
|
||||
<div id="extraDaysProgramAfter_show" style="display: none;">
|
||||
<li>
|
||||
{{ travel_program_date.date }} : Ende {{ travel_program.title }}
|
||||
<br>Übernachtung : Reiseverlängerung im Rundreisehotel oder auf Wunsch in einem anderen Hotel der gebuchten Preiskategorie in Tel Aviv oder Jerusalem
|
||||
</li>
|
||||
<li>
|
||||
<span id="extraDaysProgramAfter_date" data-org-date="{{ travel_program_date.date }}">{{ travel_program_date.date }}</span> : Reiseverlängerung - {{ travel_program_date.day|raw }}
|
||||
</li>
|
||||
</div>
|
||||
<div id="extraDaysProgramAfter_hide">
|
||||
<li>
|
||||
{{ travel_program_date.date }} : {{ travel_program_date.day|raw }}
|
||||
{% if travel_program_date.night is defined %}
|
||||
<br>Übernachtung : {{ travel_program_date['night']|raw }}
|
||||
{% endif %}
|
||||
</li>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
</div>
|
||||
|
|
@ -409,7 +424,6 @@
|
|||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<h5>Reiseleistungen</h5>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<div class="accordion-toggle-2">
|
||||
<div class="panel-group" id="accordion">
|
||||
|
|
@ -456,7 +470,6 @@
|
|||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="form-box">
|
||||
<div class="">
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
|
|
@ -551,15 +564,12 @@
|
|||
}
|
||||
.form-box-small .form-control{
|
||||
margin-bottom: 8px;
|
||||
|
||||
}
|
||||
|
||||
.form-box.form-box-small .st-travelers div.required:before {
|
||||
margin-right: 20px;
|
||||
right: 0px;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<div class="form-box form-box-small">
|
||||
|
|
@ -569,13 +579,11 @@
|
|||
<p>Bitte geben Sie Ihre Vornamen und Nachnamen in die beiden Felder "Vornamen" und "Nachnamen" ein, wie diese im maschinenlesbaren Teil in Ihrem Reisepass eingetragen sind.</p>
|
||||
</div>
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
|
||||
<div class="hidden">
|
||||
{% for country in travel_program.countries %}
|
||||
<input type="hidden" name="travel_program_countries_id[]" value="{{ country.id }}">
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="st-travelers">
|
||||
{% set currentIndex = 0 %}
|
||||
{% for room in form.rooms %}
|
||||
|
|
@ -680,6 +688,7 @@
|
|||
<label for="{{ traveler.acceptEntryRequirements.vars.id }}" style="line-height: 1.2em;">
|
||||
Ich habe die oben genannten Hinweise zu den "Einreisebestimmungen, Visabestimmungen und gesundheitspolizeilichen Vorschriften" für mich und alle Mitreisenden gelesen und zur Kenntnis genommen..
|
||||
</label>
|
||||
<span class="checkbox_marker"></span>
|
||||
{{ form_errors(traveler.acceptEntryRequirements) }}
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
|
|
@ -693,7 +702,8 @@
|
|||
|
||||
</div> <!-- st trav -->
|
||||
<h2>Hinweis</h2>
|
||||
<p>Sofern Sie nicht oder nicht ausschließlich nur die deutsche, österreichische oder schweizerische Staatsbürgerschaft besitzen, können Sie die Reise nicht buchen,
|
||||
|
||||
<p>Sofern Sie nicht oder nicht ausschließlich nur die Staatsbürgerschaft für [Deutschland, Österreich, Schweiz, Italien, Spanien, Frankreich] besitzen, können Sie die Reise nicht buchen,
|
||||
da wir Sie vorher u.a. über die Einreisebestimmungen für Ihre individuelle Staatsbürgerschaft informieren müssen.
|
||||
Bitte nehmen Sie vor einer Buchung Kontakt mit uns auf, damit Sie nach Erhalt der Informationen entscheiden können, ob Sie die Reise buchen möchten.</p>
|
||||
</div> <!-- col -->
|
||||
|
|
@ -718,6 +728,7 @@
|
|||
<label for="{{ form.acceptLegalRights.vars.id }}" style="line-height: 1.2em;">
|
||||
Hiermit bestätige ich, dass ich das Formblatt mit den Informationen zu meinen wichtigsten Rechten nach der Richtlinie (EU) 2015/2302 zur Kenntnis genommen habe.
|
||||
</label>
|
||||
<span class="checkbox_marker"></span>
|
||||
{{ form_errors(form.acceptLegalRights) }}
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
|
|
@ -751,6 +762,7 @@
|
|||
Die für deutsche Staatsbürger geltenden Bestimmungen finden Sie auf den Seiten des <a href="https://www.auswaertiges-amt.de/de/ReiseUndSicherheit/reise-und-sicherheitshinweise" target="_blank">Auswärtigen Amts</a>
|
||||
Ein Widerrufsrecht steht Ihnen gemäß § 312 g Abs. 2 Nr. 9 BGB (Bürgerliches Gesetzbuch) nicht zu.
|
||||
</label>
|
||||
<span class="checkbox_marker"></span>
|
||||
{{ form_errors(form.acceptTerms) }}
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
|
|
@ -772,6 +784,7 @@
|
|||
{{ form_widget(form.acceptPrivacy) }}
|
||||
<label for="{{ form.acceptPrivacy.vars.id }}" style="line-height: 1.2em;">Ich habe die <a href="/datenschutz" target="_blank">Datenschutzerklärung</a> zur Kenntnis genommen.
|
||||
</label>
|
||||
<span class="checkbox_marker"></span>
|
||||
{{ form_errors(form.acceptPrivacy) }}
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
|
|
@ -810,9 +823,9 @@
|
|||
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<button type="submit" value="SEND" id="submit"
|
||||
class="aligncenter btn btn-primary btn-lg border-radius"
|
||||
class="aligncenter btn btn-primary btn-lg border-radius btn-booking-form"
|
||||
>
|
||||
kostenpflichtig<br class="visible-xs"> buchen
|
||||
<i class="fa fa-angle-double-right" style="margin-bottom:-1px!important;"></i> kostenpflichtig<br class="visible-xs"> buchen
|
||||
</button>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,14 @@
|
|||
{% block canonical_tag %}{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
<style>
|
||||
.c1.plus li:before {
|
||||
content: '+';
|
||||
}
|
||||
.c1.minus li:before {
|
||||
content: '-';
|
||||
}
|
||||
</style>
|
||||
<section class="clearfix">
|
||||
|
||||
<div class="content-copy">
|
||||
|
|
@ -88,13 +95,13 @@
|
|||
<div id="collapse1" class="panel-collapse collapse" aria-expanded="true" style="">
|
||||
<div class="panel-body">
|
||||
<h3>Eingeschlossene Leistungen</h3>
|
||||
<ul class="c1">
|
||||
<ul class="c1 plus">
|
||||
{% 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>
|
||||
<h3>Nicht eingeschlossene / zubuchbare Leistungen</h3>
|
||||
<ul class="c1">
|
||||
<ul class="c1 minus">
|
||||
{% for travel_program_service in travel_program.excluded|split('\n') %}
|
||||
<li>{{ travel_program_service|raw }}</li>
|
||||
{% endfor %}
|
||||
|
|
@ -200,6 +207,7 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<th style="text-align: left;">Nr.</th>
|
||||
<th style="text-align: left;">Zimmertyp</th>
|
||||
<th style="text-align: left;">Geschlecht</th>
|
||||
<th style="text-align: left;">Vorname</th>
|
||||
<th style="text-align: left;">Nachname</th>
|
||||
|
|
@ -209,40 +217,135 @@
|
|||
</thead>
|
||||
<tbody class="st-travelers">
|
||||
|
||||
{% for participant in booking.participants %}
|
||||
<tr class="st-traveler st-traveler-{{ loop.index }}"
|
||||
data-st-traveler-index="{{ loop.index }}"
|
||||
style="display: ;"
|
||||
>
|
||||
{% set travelerIndex = 0 %}
|
||||
{% set travelerCollection = booking_request.travelers|slice(0, (booking_request.travelerCount + booking_request.childrenCount)) %}
|
||||
{% for room in booking_request.occupiedRooms %}
|
||||
{% if(room.type == 1) %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index"
|
||||
type="button"
|
||||
>
|
||||
{{ loop.index ?? '' }}
|
||||
</button>
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
{% if participant.sex == 1 %}
|
||||
männlich
|
||||
{% elseif participant.sex == 2 %}
|
||||
weiblich
|
||||
{% endif %}
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
{{ participant.firstName }}
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
{{ participant.lastName }}
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
{{ participant.birthDate|date }}
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
{{ participant.getNationalityName }}
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Einzelzimmer Erwachsener</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
{% if(room.child == 1) %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Einzelzimmer Kind</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
{% endif %}
|
||||
{% elseif (room.type == 2) %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Doppelzimmer Erwachsener</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Doppelzimmer Erwachsener</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
|
||||
{% if(room.child == 1) %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Doppelzimmer Kind</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
{% endif %}
|
||||
{% elseif (room.type == 3) %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Dreibettzimmer Erwachsener</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
|
||||
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Dreibettzimmer Erwachsener</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
|
||||
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Dreibettzimmer Erwachsener</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
{% if(room.child == 1) %}
|
||||
<tr>
|
||||
<td>
|
||||
<button class="btn btn-primary btn-sm border-radius st-traveller-index" type="button" >{{ loop.index ?? '' }} </button>
|
||||
</td>
|
||||
<td style="text-align: left;">Dreibettzimmer Kind</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].sex == 1 ? 'männlich' : 'weiblich' }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].firstName }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].lastName -}}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].birthDate }}</td>
|
||||
<td style="text-align: left;">{{ travelerCollection[travelerIndex].nationalityName }}</td>
|
||||
</tr>
|
||||
{% set travelerIndex = travelerIndex + 1 %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
<div class="row">
|
||||
{% for calendar_month in calendar %}
|
||||
|
||||
<div class="col-xs-12 col-sm-6">
|
||||
<table class="table calendar-table">
|
||||
<table class="table calendar-table" id="jump-{{ calendar_month['monthNumber'] }}-{{ calendar_month['year'] }}">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="7">
|
||||
{{ calendar_month['monthName'] }} {{ calendar_month['year'] }}
|
||||
{{ calendar_month['monthNumber'] }} {{ calendar_month['monthName'] }} {{ calendar_month['year'] }}
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
|
|||
|
|
@ -2,13 +2,10 @@
|
|||
{# @var fewo_lodging \AppBundle\Entity\FewoLodging #}
|
||||
{% extends get_base_template() %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{% javascripts '@AppBundle/Resources/public/js/travelProgram.js' %}
|
||||
<script src="{{ asset_url }}"></script>
|
||||
{% endjavascripts %}
|
||||
{% endblock %}
|
||||
|
||||
{% 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">
|
||||
|
|
@ -185,10 +182,14 @@
|
|||
</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' }}
|
||||
|
|
@ -218,98 +219,11 @@
|
|||
|
||||
<p>Bitte klicken Sie einen Anreisetermin (grüne Zahl), um zur Buchungsmaske zu gelagen.</p>
|
||||
|
||||
<style>
|
||||
.table > tbody > tr > td.normal {
|
||||
background-color: rgba(88, 155, 92, 0.20);
|
||||
padding: 8px;
|
||||
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-non {
|
||||
background-color: #fff;
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-past {
|
||||
background-color: rgba(242, 242, 242, 0.5);
|
||||
}
|
||||
.table > tbody > tr > td.calendar-light {
|
||||
opacity: 0.5;
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-disabled-half {
|
||||
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0bcbc+49,f2f2f2+50,f0bcbc+51 */
|
||||
background: #f0bcbc; /* Old browsers */
|
||||
background: -moz-linear-gradient(-35deg, #f0bcbc 49%, #f2f2f2 50%, #f0bcbc 51%); /* FF3.6-15 */
|
||||
background: -webkit-linear-gradient(-35deg, #f0bcbc 49%,#f2f2f2 50%,#f0bcbc 51%); /* Chrome10-25,Safari5.1-6 */
|
||||
background: linear-gradient(145deg, #f0bcbc 49%,#f2f2f2 50%,#f0bcbc 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#f0bcbc',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-disabled-half-booked {
|
||||
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0bcbc+49,f2f2f2+50,f0bcbc+51 */
|
||||
background: #f0bcbc; /* Old browsers */
|
||||
background: -moz-linear-gradient(-35deg, #f0bcbc 49%, #f2f2f2 50%, #C5DCC6 51%); /* FF3.6-15 */
|
||||
background: -webkit-linear-gradient(-35deg, #f0bcbc 49%,#f2f2f2 50%,#C5DCC6 51%); /* Chrome10-25,Safari5.1-6 */
|
||||
background: linear-gradient(145deg, #f0bcbc 49%,#f2f2f2 50%,#C5DCC6 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#C5DCC6',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
|
||||
}
|
||||
.table > tbody > tr > .calendar-day-reservation-begin {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #deebde), color-stop(49%, #deebde), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
}
|
||||
.table > tbody > tr > .calendar-day-reservation-end {
|
||||
background-color: #f2f2f2;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #deebde), color-stop(100%, #deebde));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
}
|
||||
|
||||
.table > tbody > tr > td.active {
|
||||
background-color: rgba(88, 155, 92, 0.35);
|
||||
padding: 0;
|
||||
}
|
||||
.table > tbody > tr > td.active:hover {
|
||||
background-color: #648859;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td a {
|
||||
color: #5a5a5a;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
padding: 8px;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td:hover a {
|
||||
color: #fff;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
}
|
||||
.table > tbody > tr > td a {
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
</style>
|
||||
{% include 'default/pages/cms/calendarLodgingProgram.html.twig' %}
|
||||
|
||||
</div> <!-- END tabpanel -->
|
||||
</div>
|
||||
|
||||
{{ block('travel_lodging_program_tab_bar') }}
|
||||
</div>
|
||||
</section><!-- end section -->
|
||||
{% endblock body %}
|
||||
|
|
@ -57,8 +57,6 @@
|
|||
|
||||
|
||||
<div class="content-pane">
|
||||
{{ page.contentNew|raw|keywords|lozad }}
|
||||
|
||||
<h1>Die SS Sudan</h1>
|
||||
<p class="ft">
|
||||
Der sehr elegante Restaurantsaal besteht ebenfalls aus Mobiliar des 19. Jahrhunderts und ist mit
|
||||
|
|
|
|||
|
|
@ -10,29 +10,6 @@
|
|||
|
||||
{% block body %}
|
||||
|
||||
<style>
|
||||
.price-over-slider.next-over {
|
||||
left: 15px;
|
||||
border-left: 0;
|
||||
top: 125px;
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.price-over-slider.next-over {
|
||||
left: 150px;
|
||||
border-left: 1px solid #fff;
|
||||
top: 75px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.price-over-slider.next-over {
|
||||
top: 165px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
</style>
|
||||
<section class="clearfix">
|
||||
<div class="content-copy">
|
||||
<h1>{{ travel_program.title|default(page.pagetitle)|default(page.title) }}</h1>
|
||||
|
|
@ -53,20 +30,19 @@
|
|||
</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"
|
||||
onclick=
|
||||
>
|
||||
Termine & Preise
|
||||
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-lg border-radius st-slider-booking-btn st-slider-booking-btn-bottom">
|
||||
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>
|
||||
<section class="section fullscreen background padding-0 margin-bottom-20">
|
||||
|
|
@ -114,16 +90,12 @@
|
|||
#}
|
||||
|
||||
{% block travel_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="active">
|
||||
<a href="#travel-description-content-tab" aria-controls="travel-description-content-tab"
|
||||
role="tab" data-toggle="tab">
|
||||
Reiseablauf
|
||||
role="tab" data-toggle="tab" class="child-first">
|
||||
<span>1</span> Reiseablauf
|
||||
</a>
|
||||
</li>
|
||||
{% if travel_program.included is not empty or
|
||||
|
|
@ -131,16 +103,17 @@
|
|||
travel_program.classDescription is not empty %}
|
||||
<li>
|
||||
<a href="#travel-service-content-tab" aria-controls="travel-service-content-tab"
|
||||
role="tab" data-toggle="tab">
|
||||
Leistungen
|
||||
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">
|
||||
Termine <i class="fa fa-star"></i> Preise
|
||||
data-toggle="tab" class="child-sec">
|
||||
<span>3</span> Termine <i class="fa fa-star faa-burst animated"></i> Preise
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
|
@ -158,12 +131,14 @@
|
|||
Landinfos
|
||||
</a>
|
||||
</li>
|
||||
{#<li><a href="#content_tab_07" aria-controls="content_tab_07" role="tab" data-toggle="tab">Team vor Ort</a></li>#}
|
||||
</ul>
|
||||
</div>
|
||||
{% endblock travel_program_tab_bar %}
|
||||
|
||||
|
||||
<div class="tab-content">
|
||||
<div id="position-scroll-tab"></div>
|
||||
|
||||
{#
|
||||
********* REISEABLAUF *********
|
||||
#}
|
||||
|
|
@ -240,8 +215,8 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<th>Nr.</th>
|
||||
<th>Beginn</th>
|
||||
<th>Ende</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 %}
|
||||
|
|
@ -249,7 +224,7 @@
|
|||
{% if has_singel_bed_room %}
|
||||
<th>Preis p.P im Einzelzimmer</th>{% endif %}
|
||||
<th>Abflugorte / Zuschläge</th>
|
||||
<th>Status</th>
|
||||
<th>Verfügbarkeit</th>
|
||||
<th>Buchungsformular</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
|
@ -265,20 +240,20 @@
|
|||
<tr>
|
||||
<td data-title="Nr."><strong class="small">{{ travel_date.name }}</strong>
|
||||
</td>
|
||||
<td data-title="Beginn">{{ travel_date.start|date }}</td>
|
||||
<td data-title="Ende">{{ travel_date.end|date }}</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">
|
||||
<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 %}
|
||||
<span class="block">
|
||||
<span class="{% if travel_date.prices[5].effectiveDiscountPrice %}old_price{% endif %}">
|
||||
ab {{ travel_date.prices[5].effectivePrice|number_format }}
|
||||
€
|
||||
ab {{ travel_date.prices[5].effectivePrice|number_format }} €
|
||||
</span>
|
||||
{% if travel_date.prices[5].effectiveDiscountPrice %}
|
||||
<span class="new_price">
|
||||
|
|
@ -295,16 +270,15 @@
|
|||
</td>
|
||||
{% endif %}
|
||||
{% if has_double_bed_room %}
|
||||
<td data-title="Preis p.P im Doppelzimmer">
|
||||
<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 %}
|
||||
<span class="block">
|
||||
<span class="{% if travel_date.prices[3].effectiveDiscountPrice %}old_price{% endif %}">
|
||||
ab {{ travel_date.prices[3].effectivePrice|number_format }}
|
||||
€
|
||||
ab {{ travel_date.prices[3].effectivePrice|number_format }} €
|
||||
</span>
|
||||
{% if travel_date.prices[3].effectiveDiscountPrice %}
|
||||
<span class="new_price">
|
||||
|
|
@ -321,14 +295,14 @@
|
|||
{% endif %}
|
||||
|
||||
{% if has_singel_bed_room %}
|
||||
<td data-title="Preis p.P im Einzelzimmer">
|
||||
<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 %}
|
||||
<span class="block">
|
||||
<span class="{% if travel_date.prices[1].effectiveDiscountPrice %}old_price{% endif %}">
|
||||
ab {{ travel_date.prices[1].effectivePrice|number_format }}
|
||||
€
|
||||
</span>
|
||||
|
|
@ -346,7 +320,7 @@
|
|||
</td>
|
||||
{% endif %}
|
||||
<td data-title="Abflugorte / Zuschläge">
|
||||
<a href="#" class="color-brand" data-toggle="modal"
|
||||
<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>
|
||||
|
|
@ -371,7 +345,7 @@
|
|||
</td>
|
||||
{% else %}
|
||||
<td data-title="Verfügbarkeit">
|
||||
<div style="">
|
||||
<div style="font-size: 0.95em">
|
||||
<img src="/images/icons/available-{{ travel_date.effectiveStatus }}.png"
|
||||
style="height: 24px; width: 24px;vertical-align:middle"
|
||||
alt="">
|
||||
|
|
@ -384,15 +358,33 @@
|
|||
{% 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"
|
||||
class="btn btn-primary btn-md border-radius btn-booking-form"
|
||||
rel="nofollow"
|
||||
>
|
||||
ANFRAGEN
|
||||
<i class="fa fa-angle-double-right"></i> Buchungs-<br class="hidden"><span class="hidden" style="margin-left: 5px;"> </span>Formular
|
||||
</a>
|
||||
</td>
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -2,17 +2,13 @@
|
|||
{% form_theme form 'default/form/theme.html.twig' %}
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ parent() }}
|
||||
{% stylesheets 'bundles/app/css/booking.css' filter='cssrewrite' %}
|
||||
<link rel="stylesheet" href="{{ asset_url }}"/>
|
||||
{% endstylesheets %}
|
||||
{% endblock %}
|
||||
<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 javascripts %}
|
||||
{{ parent() }}
|
||||
{% javascripts '@AppBundle/Resources/public/js/fewoBooking.js' %}
|
||||
<script src="{{ asset_url }}"></script>
|
||||
{% endjavascripts %}
|
||||
<script src="{{ asset('js/fewoBooking-min.js?v') }}{{ get_file_last_time('js/fewoBooking-min.js') }}"></script>
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
|
|
@ -31,20 +27,19 @@
|
|||
|
||||
<h2 style="margin-top:10px">{{ lodging.name }}</h2>
|
||||
|
||||
Aus technischen Gründen können wir Ihnen derzeit leider kein Buchungsformular anbieten.<br>
|
||||
Bitte schreiben Sie uns eine Mail unter <a href="mailto:stern@sterntours.de">stern@sterntours.de</a> für Ihre Anfrage.<br><br>
|
||||
Vielen Dank für Ihr Verständnis.
|
||||
|
||||
|
||||
|
||||
{#
|
||||
<div id="booking_form" class="booking_form" style="display:none;">
|
||||
<div id="booking_form" class="booking_form" style="">
|
||||
|
||||
<form class="st-booking-form" method="post" data-toggle="validator">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_errors(form.email) }}
|
||||
|
||||
<input type="hidden" name="hidden_toDate" id="hidden_toDate" value="{{ lastSeason.toDate|date('d-m-y') }}">
|
||||
<input type="hidden" name="hidden_reservationDays" id="hidden_reservationDays" value='{{ reservationDays|json_encode|raw }}'>
|
||||
<input type="hidden" name="hidden_customDays" id="hidden_customDays" value='{{ classByDays|json_encode|raw }}'>
|
||||
|
||||
|
||||
<div id="message"></div>
|
||||
|
||||
<div class="form-box">
|
||||
|
|
@ -57,34 +52,38 @@
|
|||
{{ lodging.name }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<!-- <tr>
|
||||
<td>Saison</td>
|
||||
<td>
|
||||
{{ fewo_price.season.name }}
|
||||
</td>
|
||||
</tr>
|
||||
-->
|
||||
<tr>
|
||||
<td>Reisebeginn</td>
|
||||
<td>{{ fromDate|date }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ form_label(form.toDate, 'Reiseende') }}</td>
|
||||
<td><label class="st-required control-label required">Datum</label></td>
|
||||
<td>
|
||||
{{ form_widget(form.toDate, {attr: {'data-allowed-dates': allowed_to_dates}}) }}
|
||||
{{ form_errors(form.toDate) }}
|
||||
<div class="form-group" style="margin-bottom:0;">
|
||||
<div class="input-daterange input-group" id="date-range">
|
||||
{{ form_widget(form.fromDate) }}
|
||||
<span class="input-group-addon bg-info b-0 text-white">bis</span>
|
||||
{{ form_widget(form.toDate) }}
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<!-- <tr>
|
||||
<td>Mindestbelegung</td>
|
||||
<td>
|
||||
{{ fewo_price.season.minimumStay }} {{ fewo_price.season.minimumStay < 2 ? 'Nacht' : 'Nächte' }}
|
||||
</td>
|
||||
</tr>
|
||||
</tr> -->
|
||||
<tr>
|
||||
<td>{{ form_label(form.travelerCount, 'Reiseteilnehmer') }}</td>
|
||||
<td>
|
||||
<div style="max-width: 180px;">
|
||||
{{ form_widget(form.travelerCount) }}
|
||||
{{ form_errors(form.travelerCount) }}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
|
@ -211,21 +210,8 @@
|
|||
<div class="form-box">
|
||||
<div class="">
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<h5>Allgemeine Geschäftsbedingungen</h5>
|
||||
<div class="form-group">
|
||||
<div class="checkbox">
|
||||
{{ form_widget(form.acceptTerms) }}
|
||||
<label for="{{ form.acceptTerms.vars.id }}">
|
||||
Ich habe alle Daten und Angaben auf Richtigkeit überprüft. Ich habe die
|
||||
<a href="/uploads/{{ terms_filename }}" target="_blank">
|
||||
Allgemeinen Geschäftsbedingungen des Reisevermittlers
|
||||
</a>
|
||||
gelesen und akzeptiert. Zugleich erkenne ich diese für alle Reiseteilnehmer an.
|
||||
</label>
|
||||
{{ form_errors(form.acceptTerms) }}
|
||||
</div>
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
<h5>Datenschutz</h5>
|
||||
|
||||
|
||||
<div class="form-group">
|
||||
<div class="checkbox">
|
||||
|
|
@ -236,28 +222,17 @@
|
|||
Datenschutzerklärung
|
||||
</a> genannte Datenverarbeitung ein.
|
||||
</label>
|
||||
<span class="checkbox_marker"></span>
|
||||
{{ form_errors(form.acceptPrivacy) }}
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="checkbox">
|
||||
{{ form_widget(form.acceptProcessing) }}
|
||||
<label for="{{ form.acceptProcessing.vars.id }}" style="line-height: 1.2em;">Hiermit willige ich in die Verarbeitung der von mir freiwillig
|
||||
angegebenen personenbezogenen Daten ein.
|
||||
Ich wurde darüber informiert, dass ich diese Einwilligung jederzeit ohne Nachteile per Mail an
|
||||
stern@sterntours.de widerrufen kann.
|
||||
|
||||
</label>
|
||||
{{ form_errors(form.acceptProcessing) }}
|
||||
<div class="help-block with-errors"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12 col-sm-12 col-xs-12">
|
||||
<button type="submit" value="SEND" id="submit"
|
||||
class="aligncenter btn btn-primary btn-lg border-radius"
|
||||
class="aligncenter btn btn-primary btn-lg border-radius btn-booking-form"
|
||||
>
|
||||
kostenpflichtig<br class="visible-xs"> buchen
|
||||
<i class="fa fa-angle-double-right" style="margin-bottom:-1px!important;"></i> kostenpflichtig<br class="visible-xs"> mieten
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -269,9 +244,12 @@
|
|||
</form>
|
||||
|
||||
</div><!-- end contact-form -->
|
||||
#}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
{% endblock body %}
|
||||
|
|
@ -21,9 +21,9 @@ monolog:
|
|||
console:
|
||||
type: console
|
||||
channels: [!event, !doctrine]
|
||||
browser_console:
|
||||
type: browser_console
|
||||
level: warning
|
||||
# browser_console:
|
||||
# type: browser_console
|
||||
# level: warning
|
||||
# uncomment to get logging in your browser
|
||||
# you may have to allow bigger header sizes in your Web server configuration
|
||||
#firephp:
|
||||
|
|
|
|||
|
|
@ -316,7 +316,6 @@ class AdminController extends Controller
|
|||
return $this->redirect('/admin/fewo/lodgings');
|
||||
}
|
||||
|
||||
|
||||
return $this->render('default/admin/lodgingsEdit.html.twig', [
|
||||
'form' => $form->createView(),
|
||||
'lodging' => $lodging,
|
||||
|
|
@ -499,7 +498,6 @@ class AdminController extends Controller
|
|||
|
||||
// -------------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
return $this->render('default/admin/fewoBooking.html.twig', [
|
||||
'form' => $form->createView(),
|
||||
'lodging' => $lodging,
|
||||
|
|
@ -681,6 +679,7 @@ class AdminController extends Controller
|
|||
*/
|
||||
public function adminFewoNewReservationAction(Request $request, $lodgingId)
|
||||
{
|
||||
|
||||
$em = $this->getEntityManager();
|
||||
$fewoLodgingRepo = $em->getRepository('AppBundle:FewoLodging');
|
||||
$lodging = $fewoLodgingRepo->find($lodgingId);
|
||||
|
|
@ -754,7 +753,6 @@ class AdminController extends Controller
|
|||
public function adminFewoNewReservationWithStartingDayAction(Request $request, $lodgingId, $fromDate)
|
||||
{
|
||||
|
||||
|
||||
$em = $this->getEntityManager();
|
||||
$fewoLodgingRepo = $em->getRepository('AppBundle:FewoLodging');
|
||||
$lodging = $fewoLodgingRepo->find($lodgingId);
|
||||
|
|
|
|||
|
|
@ -66,6 +66,7 @@ class BookingController extends Controller
|
|||
|
||||
if($action == '/show_nationality_country_text')
|
||||
{
|
||||
|
||||
$ret = "";
|
||||
$nationality_id = $request->request->get('nationality_id');
|
||||
$country_ids = $request->request->get('country_ids');
|
||||
|
|
@ -223,11 +224,14 @@ class BookingController extends Controller
|
|||
)
|
||||
);
|
||||
|
||||
|
||||
// #TODO This will lead to multiple bookings due to multiple form submission. Redirect instead!
|
||||
return $this->render('default/pages/bookingConfirmation.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $travelProgramPage,
|
||||
'booking_request' => $bookingRequest,
|
||||
'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'show_nav_sidebar_about' => "notshow",
|
||||
'show_nav_sidebar_widget' => false,
|
||||
'show_travel_guide_sidebar_widget' => false,
|
||||
'show_travel_magazine_sidebar_widget' => false,
|
||||
|
|
@ -243,17 +247,12 @@ class BookingController extends Controller
|
|||
|
||||
]);
|
||||
}
|
||||
/* $string = (string) $form->getErrors(true, true);
|
||||
var_dump($string);
|
||||
var_dump( $form->isValid());
|
||||
var_dump($this->getErrorMessages($form));
|
||||
|
||||
die();
|
||||
*/
|
||||
return $this->render('default/pages/booking.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $travelProgramPage,
|
||||
'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'show_nav_sidebar_about' => "notshow",
|
||||
'show_nav_sidebar_widget' => false,
|
||||
'show_travel_guide_sidebar_widget' => false,
|
||||
'show_travel_magazine_sidebar_widget' => false,
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
namespace AppBundle\Controller;
|
||||
|
||||
|
||||
use AppBundle\Entity\FewoPrice;
|
||||
use AppBundle\Entity\Page;
|
||||
use AppBundle\Entity\SunstarTravelProgram;
|
||||
use AppBundle\Entity\FewoLodgingGroup;
|
||||
|
|
@ -254,6 +255,8 @@ class CmsController extends Controller
|
|||
$calendarService = $this->container->get('app.lodging_calendar_util');
|
||||
$lodging = $page->getFewoLodging();
|
||||
|
||||
$prices = $lodging->getPricesFilterNow();
|
||||
$lodging->setPrices($prices);
|
||||
$paddedCalendar = $calendarService->getCalendarWithPadding($calendarService->getMinCalendarEntriesByLodging($lodging));
|
||||
if (count($lodging->getPrices()->toArray()) != 0)
|
||||
{
|
||||
|
|
@ -262,7 +265,6 @@ class CmsController extends Controller
|
|||
} else {
|
||||
$calendar = $paddedCalendar;
|
||||
}
|
||||
|
||||
$imgs = array();
|
||||
$imgs_pre = array();
|
||||
$imgs_post = array();
|
||||
|
|
|
|||
|
|
@ -126,6 +126,7 @@ class ComponentController extends Controller
|
|||
;
|
||||
return $this->render('default/components/sidebar/pageSliderSidebarWidget.html.twig', [
|
||||
'slider_title' => 'Reiseführer',
|
||||
'target_widget' => 'travel-leader-widget',
|
||||
'pages' => $pages
|
||||
]);
|
||||
}
|
||||
|
|
@ -142,6 +143,7 @@ class ComponentController extends Controller
|
|||
;
|
||||
return $this->render('default/components/sidebar/pageSliderSidebarWidget.html.twig', [
|
||||
'slider_title' => 'Reisemagazin',
|
||||
'target_widget' => 'travel-magazine-widget',
|
||||
'pages' => $pages
|
||||
]);
|
||||
}
|
||||
|
|
@ -150,6 +152,7 @@ class ComponentController extends Controller
|
|||
{
|
||||
return $this->render('default/components/sidebar/pageSliderSidebarWidget.html.twig', [
|
||||
'slider_title' => 'Angebote',
|
||||
'target_widget' => 'offer-widget',
|
||||
'pages' => $this->getOffersByCountry($country),
|
||||
]);
|
||||
}
|
||||
|
|
@ -174,6 +177,7 @@ class ComponentController extends Controller
|
|||
{
|
||||
return $this->render(':default/components/sidebar:textSliderSidebarWidget.html.twig', [
|
||||
'slider_title' => 'Kundenfeedback',
|
||||
'target_widget' => 'feedback-widget',
|
||||
'slides' => $this->getDoctrine()->getRepository('AppBundle:Page')->findFeedbacks(
|
||||
$country->getFeedbackPage()->getId()),
|
||||
'theme' => 'gray-box',
|
||||
|
|
|
|||
|
|
@ -75,7 +75,6 @@ class DefaultController extends Controller
|
|||
{
|
||||
$destinationIds[] = $data['c2']->getId();
|
||||
}
|
||||
|
||||
$r = $this->getDoctrine()->getRepository('AppBundle:TravelPeriod')->getTravelProgramsWithTravelDatesForTimePeriod(
|
||||
$data['b'], $data['e'], $destinationIds, count($destinationIds) > 1);
|
||||
}
|
||||
|
|
@ -149,6 +148,7 @@ class DefaultController extends Controller
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
//https://dtps-ibe.traveltainment.de/hotel?taid=DRS32&ddate=2018-07-25&rdate=2018-08-08&adult=2&rid=2202
|
||||
//http://dtps-ibe.traveltainment.de/hotel?taid=DRS32&ddate=2018-07-25&rdate=2018-08-08&dur=6,14&adult=1&child=0&rgid=2202
|
||||
else
|
||||
|
|
@ -266,9 +266,42 @@ class DefaultController extends Controller
|
|||
$child .= $p.",";
|
||||
}
|
||||
}
|
||||
$board = "";
|
||||
$room = "";
|
||||
|
||||
if($sleist != "" && strpos($sleist, ";")) {
|
||||
$eleist = explode(';', $sleist);
|
||||
$v = end($eleist);
|
||||
if(strpos($v, "F") !== false){
|
||||
$board = 2;
|
||||
}
|
||||
if(strpos($v, "H") !== false){
|
||||
$board = 3;
|
||||
}
|
||||
if(strpos($v, "V") !== false){
|
||||
$board = 4;
|
||||
}
|
||||
if(strpos($v, "A") !== false){
|
||||
$board = 5;
|
||||
}
|
||||
if(strpos($v, "EZ") !== false){
|
||||
$room = 1;
|
||||
}
|
||||
if(strpos($v, "DZ") !== false){
|
||||
$room = 2;
|
||||
}
|
||||
if(strpos($v, "FZ") !== false){
|
||||
$room = 3;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
$child = rtrim($child, ',');
|
||||
$url = "http://dtps-ibe.traveltainment.de/offer?taid=DRS32";
|
||||
$url .= '&ibe=package&adult='.$adult.'&ddate='.date("Y-m-d", $hin).'&rdate='.date("Y-m-d", $rueck).'&depap='.$airp.'&aid='.$iff.'&brand='.$va.'&dur='.$dau.'&child='.$child;
|
||||
$url = "https://dtps-ibe.traveltainment.de/offer?taid=DRS32";
|
||||
$url .= '&ibe=package&adult='.$adult.'&ddate='.date("Y-m-d", $hin).'&rdate='.date("Y-m-d", $rueck).'&depap='.$airp.'&aid='.$iff.'&brand='.$va.'&dur='.$dau.'&child='.$child.'&board='.$board.'&room='.$room.'&dur=exact';
|
||||
|
||||
|
||||
|
||||
$ttUrl = urldecode($url);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ use AppBundle\Entity\Traveler;
|
|||
use AppBundle\Entity\TravelPeriodPrice;
|
||||
use AppBundle\Entity\TravelPeriodPriceType;
|
||||
use AppBundle\Form\BookingRequestType;
|
||||
use AppBundle\Form\FewoReservationType;
|
||||
use AppBundle\Util;
|
||||
|
||||
|
||||
|
|
@ -26,26 +27,143 @@ use Symfony\Component\HttpFoundation\Response;
|
|||
|
||||
class FewoBookingController extends Controller
|
||||
{
|
||||
|
||||
private $calendar;
|
||||
|
||||
public function getEntityManager()
|
||||
{
|
||||
return $this->getDoctrine()->getManager();
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
private function initCalender($lodging){
|
||||
|
||||
$calendarService = $this->container->get('app.lodging_calendar_util');
|
||||
$paddedCalendar = $calendarService->getCalendarWithPadding($calendarService->getMinCalendarEntriesByLodging($lodging));
|
||||
if (count($lodging->getPrices()->toArray()) != 0) {
|
||||
$this->calendar = $calendarService->calendarAndFillDayStates($paddedCalendar, $lodging);
|
||||
} else {
|
||||
$this->calendar = $paddedCalendar;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @param FewoLodging $lodging
|
||||
* @param $endDate
|
||||
* @return array
|
||||
*/
|
||||
public function reservationDays(FewoLodging $lodging, $endDate)
|
||||
{
|
||||
$reservations = $lodging->getReservationsFilter(new \DateTime(), $endDate);
|
||||
|
||||
$days = array();
|
||||
foreach($reservations as $reservation) {
|
||||
|
||||
$setFromIntervall = clone $reservation->getFromDate();
|
||||
$fromDate = $reservation->getFromDate();
|
||||
$toDate = $reservation->getToDate();
|
||||
|
||||
// $diff = $fromDate->diff($toDate);
|
||||
$interval = \DateInterval::createFromDateString('1 day');
|
||||
$period = new \DatePeriod($setFromIntervall->modify('+1 day'), $interval, $toDate);
|
||||
|
||||
//days
|
||||
foreach ($period as $dt) {
|
||||
$days[] = $dt->format("d.m.Y");
|
||||
}
|
||||
}
|
||||
return $days;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param FewoLodging $lodging
|
||||
* @param $endDate
|
||||
* @return array
|
||||
*/
|
||||
public function classByDays(FewoLodging $lodging, $endDate)
|
||||
{
|
||||
$ret = array();
|
||||
foreach ($this->calendar as $month => $calendar_month) {
|
||||
foreach ($calendar_month['data'] as $key => $day) {
|
||||
if($day && $day->getDate()){
|
||||
$toClass = "";
|
||||
|
||||
if($day->getIsBookable() && !$day->getIsPastDate()) {
|
||||
$toClass .= " bookable";
|
||||
}
|
||||
|
||||
$ret[$day->getDate()->format("d.m.Y")] = $day->getCssClass()."".$toClass;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* The routing for this action is entirely controlled by KernelControllerListener!
|
||||
*
|
||||
* @param Page $fewoTravelProgramPage
|
||||
* @param Request $request
|
||||
* @param $action
|
||||
*
|
||||
* @return \Symfony\Component\HttpFoundation\RedirectResponse|\Symfony\Component\HttpFoundation\Response
|
||||
* @throws \Exception
|
||||
* @param FewoLodging $lodging
|
||||
* @return bool
|
||||
*/
|
||||
private function getSeasonLast(FewoLodging $lodging)
|
||||
{
|
||||
$lodgingPrices = $lodging->getPrices();
|
||||
$season = false;
|
||||
$lastDate = new \DateTime();
|
||||
foreach($lodgingPrices as $price)
|
||||
{
|
||||
if($price->getSeason()){
|
||||
if($price->getSeason()->getToDate() > $lastDate){
|
||||
$season = $price->getSeason();
|
||||
$lastDate = $price->getSeason()->getToDate();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
return $season;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param FewoBookingRequest $fewoBookingRequest
|
||||
* @param FewoLodging $fewoLodging
|
||||
*/
|
||||
private function checkIsPossible(FewoBookingRequest $fewoBookingRequest, FewoLodging $lodging){
|
||||
|
||||
$fromDate = clone $fewoBookingRequest->getFromDate();
|
||||
$toDate = clone $fewoBookingRequest->getToDate();
|
||||
|
||||
|
||||
$interval = \DateInterval::createFromDateString('1 day');
|
||||
$period = new \DatePeriod($fromDate, $interval, $toDate->modify('+1 day'));
|
||||
$check_days = array();
|
||||
//days
|
||||
foreach ($period as $dt) {
|
||||
$check_days[] = $dt->format("d.m.Y");
|
||||
}
|
||||
|
||||
foreach ($this->calendar as $month => $calendar_month) {
|
||||
foreach ($calendar_month['data'] as $key => $day) {
|
||||
if($day && $day->getDate()) {
|
||||
if (in_array($day->getDate()->format("d.m.Y"), $check_days)) {
|
||||
if($day->getIsReserved() || $day->getIsPastDate()) {
|
||||
return false;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public function indexAction(Page $fewoTravelProgramPage, $action, Request $request)
|
||||
{
|
||||
$calendarService = $this->container->get('app.lodging_calendar_util');
|
||||
|
||||
|
||||
$em = $this->getEntityManager();
|
||||
//$fewoLodgingRepo = $em->getRepository('AppBundle:FewoLodging');
|
||||
$fewoLodgingRepo = $em->getRepository('AppBundle:FewoLodging');
|
||||
$fewoPriceRepo = $em->getRepository('AppBundle:FewoPrice');
|
||||
|
||||
if (!$request->query->has('pnr') || !$request->query->has('fd'))
|
||||
|
|
@ -53,127 +171,86 @@ class FewoBookingController extends Controller
|
|||
return $this->redirect($fewoTravelProgramPage->getUrlPath());
|
||||
}
|
||||
|
||||
$priceId = $request->query->get('pnr');
|
||||
$fromDate = $request->query->get('fd');
|
||||
|
||||
$lodging = $fewoTravelProgramPage->getFewoLodging();
|
||||
/** @var FewoPrice $price */
|
||||
$price = $fewoPriceRepo->find($priceId);
|
||||
$this->initCalender($lodging);
|
||||
|
||||
/** @var FewoSeason $season */
|
||||
$maxPersons = $lodging->getMaximumPersons();
|
||||
|
||||
$fewoBookingRequest = new FewoBookingRequest();
|
||||
$fewoBookingRequest->setLodging($lodging);
|
||||
|
||||
$reservation = new FewoReservation();
|
||||
$lastSeason = $this->getSeasonLast($lodging);
|
||||
|
||||
$reservationDays = $this->reservationDays($lodging, $lastSeason->getToDate());
|
||||
$classByDays = $this->classByDays($lodging, $lastSeason->getToDate());
|
||||
|
||||
|
||||
|
||||
//first init for form ...
|
||||
$fromDate = $request->query->get('fd');
|
||||
$priceId = $request->query->get('pnr');
|
||||
$price = $fewoPriceRepo->find($priceId);
|
||||
$season = $price->getSeason();
|
||||
$minimumStay = $season->getMinimumStay();
|
||||
|
||||
$fromDate = $calendarService->convertDate($fromDate);
|
||||
$fromDateTime = new \DateTime($fromDate);
|
||||
$toDate = '';
|
||||
$maxPersons = $lodging->getMaximumPersons();
|
||||
|
||||
|
||||
$fewoBookingRequest = new FewoBookingRequest();
|
||||
$reservation = new FewoReservation();
|
||||
$toDate = new \DateTime($fromDate);
|
||||
$toDate->modify('+'.$season->getMinimumStay().' day');
|
||||
$toDate = $toDate->format('d.m.Y');
|
||||
$toDateTime = new \DateTime($toDate);
|
||||
|
||||
$fewoBookingRequest->setFromDate($fromDateTime);
|
||||
//$fewoBookingRequest->setToDate($toDate);
|
||||
$fewoBookingRequest->setToDate($toDateTime);
|
||||
$fewoBookingRequest->setNumberDays($minimumStay);
|
||||
$fewoBookingRequest->setLodging($lodging);
|
||||
$fewoBookingRequest->setPrice($price);
|
||||
|
||||
|
||||
$allowedToDateStrs = [];
|
||||
if (!$lodging->getPrices()->isEmpty())
|
||||
{
|
||||
$nightsSinceFromDate = 0;
|
||||
$calendar = $calendarService->createCalendarAndFillDayStates($lodging);
|
||||
$areAllowedToDatesCollected = false;
|
||||
foreach ($calendar as $calendarMonth)
|
||||
{
|
||||
if ($calendarMonth['year'] < $fromDateTime->format('Y') ||
|
||||
$calendarMonth['monthNumber'] < $fromDateTime->format('n'))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
/** @var Util\CalendarDayState[] $dayStates */
|
||||
$dayStates = $calendarMonth['data'];
|
||||
$i = 0;
|
||||
if ($calendarMonth['year'] == $fromDateTime->format('Y') &&
|
||||
$calendarMonth['monthNumber'] == $fromDateTime->format('n'))
|
||||
{
|
||||
$i = intval($fromDateTime->format('j')) - 1;
|
||||
}
|
||||
for (; $i < count($dayStates); ++$i)
|
||||
{
|
||||
if ($nightsSinceFromDate >= $season->getMinimumStay())
|
||||
{
|
||||
$dayState = $dayStates[$i];
|
||||
if ($dayState->getIsInSeason() && (!$dayState->getIsReserved() ||
|
||||
($dayState->getIsReservationBegin() && !$dayState->getIsReservationEnd())))
|
||||
{
|
||||
$allowedToDateStrs[] = $dayState->getDate()->format('Y-m-d');
|
||||
}
|
||||
else
|
||||
{
|
||||
$areAllowedToDatesCollected = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
++$nightsSinceFromDate;
|
||||
}
|
||||
if ($areAllowedToDatesCollected)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!empty($allowedToDateStrs))
|
||||
{
|
||||
$toDate = $allowedToDateStrs[0];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ($request->getMethod() != 'POST')
|
||||
{
|
||||
$fewoBookingRequest->setFromDate($fromDate);
|
||||
$fewoBookingRequest->setToDate($toDate);
|
||||
$fewoBookingRequest->setNumberDays($minimumStay);
|
||||
$fewoBookingRequest->setLodging($lodging);
|
||||
$fewoBookingRequest->setPrice($price);
|
||||
}
|
||||
|
||||
$form = $this->createForm(FewoBookingRequestType::class, $fewoBookingRequest, [
|
||||
'lodging' => $lodging,
|
||||
'maxPersons' => $maxPersons,
|
||||
'toDate' => $toDate
|
||||
'fromDate' => $fromDate,
|
||||
'toDate' => $toDate,
|
||||
]);
|
||||
|
||||
//overwrite is an request from form
|
||||
if ($request->getMethod() == 'POST')
|
||||
{
|
||||
$form->handleRequest($request);
|
||||
|
||||
/** @var FewoBookingRequest $fewoBookingRequest */
|
||||
$fewoBookingRequest = $form->getData();
|
||||
$fewoBookingRequest->setFromDate($fromDateTime);
|
||||
|
||||
$finalFromDate = $fewoBookingRequest->getFromDate();
|
||||
$finalToDate = $fewoBookingRequest->getToDate();
|
||||
|
||||
$timeDiff = date_diff($finalFromDate, $finalToDate);
|
||||
|
||||
$numberDays = $timeDiff->days; // todo: evtl umbenennen, damit es eindeutig für Nächte und nicht mehr für Tage verwendet wird
|
||||
|
||||
$fewoBookingRequest->setNumberDays($numberDays);
|
||||
$fewoBookingRequest->setLodging($lodging);
|
||||
$numberDays = $timeDiff->days;
|
||||
$season = $fewoLodgingRepo->findSeasonForLodgingBy($lodging, $finalFromDate);
|
||||
if($season){
|
||||
$price = $fewoPriceRepo->findOneBy(['lodging' => $lodging, 'season' => $season]);
|
||||
if($price){
|
||||
$season = $price->getSeason();
|
||||
$minimumStay = $season->getMinimumStay();
|
||||
$fewoBookingRequest->setPrice($price);
|
||||
$fewoBookingRequest->setNumberDays($numberDays);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$totalPrice = $this->calculatePrice($fewoBookingRequest, $lodging, $price);
|
||||
$perDayTotalPrice = $this->calculatePerDayTotalPrice($fewoBookingRequest, $price);
|
||||
$fewoBookingRequest->setTotalPrice($totalPrice);
|
||||
$isPossible = $this->checkIsPossible($fewoBookingRequest, $lodging);
|
||||
$priceResult = $this->calculatePriceNew($fewoBookingRequest, $lodging, $price);
|
||||
$totalPrice = 0;
|
||||
$perDayTotalPrice = 0;
|
||||
// $totalPrice = $this->calculatePrice($fewoBookingRequest, $lodging, $price);
|
||||
//$perDayTotalPrice = $this->calculatePerDayTotalPrice($fewoBookingRequest, $price);
|
||||
$fewoBookingRequest->setTotalPrice($priceResult['price_total']);
|
||||
|
||||
|
||||
if($action == '/buchen')
|
||||
{
|
||||
|
||||
if ($request->getMethod() == 'POST' && $form->isValid())
|
||||
if ($request->getMethod() == 'POST' && $form->isValid() && $isPossible)
|
||||
{
|
||||
$reservation->setFromDate($fewoBookingRequest->getFromDate());
|
||||
$reservation->setToDate($fewoBookingRequest->getToDate());
|
||||
|
|
@ -184,7 +261,7 @@ class FewoBookingController extends Controller
|
|||
$em->persist($reservation);
|
||||
$em->flush();
|
||||
|
||||
$crmBookingUrl = $this->get('app.fewo_booking_exporter')->process($fewoBookingRequest, $lodging, $price);//, $travelDate, $bookingPriceInfo);
|
||||
$crmBookingUrl = $this->get('app.fewo_booking_exporter')->process($fewoBookingRequest, $lodging, $price, $priceResult);//, $travelDate, $bookingPriceInfo);
|
||||
if (!$crmBookingUrl)
|
||||
{
|
||||
$crmBookingUrl = '[CRM-EXPORT FEHLGESCHLAGEN]';
|
||||
|
|
@ -195,7 +272,7 @@ class FewoBookingController extends Controller
|
|||
}
|
||||
|
||||
$this->get('mailer')->send(\Swift_Message::newInstance()
|
||||
->setSubject('Ihr FeWo-Buchungsauftrag bei STERN TOURS')
|
||||
->setSubject('Ihre FeWo-Mietauftrag bei STERN TOURS')
|
||||
->setFrom('stern@stern-tours.de', 'STERN TOURS')
|
||||
->setTo($fewoBookingRequest->getEmail())
|
||||
->setBody(
|
||||
|
|
@ -204,9 +281,8 @@ class FewoBookingController extends Controller
|
|||
'fewo_booking_request' => $fewoBookingRequest,
|
||||
'fewo_lodging' => $lodging,
|
||||
'fewo_price' => $price,
|
||||
//'booking_price_info' => $bookingPriceInfo,
|
||||
//'travel_date' => $travelDate,
|
||||
//'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'priceResult' => $priceResult,
|
||||
'isPossible' => $isPossible,
|
||||
]),
|
||||
'text/plain', 'utf-8'
|
||||
)
|
||||
|
|
@ -217,6 +293,7 @@ class FewoBookingController extends Controller
|
|||
->setSubject('FEWO-BUCHUNG: ' . $lodging->getName())
|
||||
->setFrom('stern@stern-tours.de', 'STERN TOURS')
|
||||
->setTo('stern@stern-tours.de')
|
||||
//->setTo('kevin@adametz.media')
|
||||
->setBody(
|
||||
$this->renderView('default/email/fewoBookingServiceEmail.txt.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir') . '/..') . DIRECTORY_SEPARATOR,
|
||||
|
|
@ -225,15 +302,16 @@ class FewoBookingController extends Controller
|
|||
'fewo_booking_request' => $fewoBookingRequest,
|
||||
'fewo_lodging' => $lodging,
|
||||
'fewo_price' => $price,
|
||||
//'booking_price_info' => $bookingPriceInfo,
|
||||
//'travel_date' => $travelDate,
|
||||
//'breadcrumb_entries' => $breadcrumbEntries,
|
||||
'priceResult' => $priceResult,
|
||||
'isPossible' => $isPossible,
|
||||
|
||||
]),
|
||||
'text/plain', 'utf-8'
|
||||
)
|
||||
);
|
||||
|
||||
|
||||
|
||||
return $this->render('default/pages/fewoBookingConfirmation.html.twig', [
|
||||
'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR,
|
||||
'page' => $fewoTravelProgramPage,
|
||||
|
|
@ -243,6 +321,8 @@ class FewoBookingController extends Controller
|
|||
'total_price' => $totalPrice,
|
||||
'total_price_per_night' => $perDayTotalPrice,
|
||||
'show_search_sidebar_widget' => false,
|
||||
'isPossible' => $isPossible,
|
||||
'priceResult' => $priceResult,
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -257,10 +337,14 @@ class FewoBookingController extends Controller
|
|||
'fewo_price' => $price,
|
||||
'total_price' => $totalPrice,
|
||||
'total_price_per_night' => $perDayTotalPrice,
|
||||
'allowed_to_dates' => implode(';', $allowedToDateStrs),
|
||||
'page' => $fewoTravelProgramPage,
|
||||
'show_search_sidebar_widget' => false,
|
||||
'lastSeason' => $lastSeason,
|
||||
'reservationDays' => $reservationDays,
|
||||
'classByDays' => $classByDays,
|
||||
'terms_filename' => $this->getDoctrine()->getRepository('AppBundle:TravelOrganizer')->find(1)->getFileName(),
|
||||
'isPossible' => $isPossible,
|
||||
'priceResult' => $priceResult,
|
||||
]);
|
||||
|
||||
}
|
||||
|
|
@ -273,12 +357,74 @@ class FewoBookingController extends Controller
|
|||
'fewo_price' => $price,
|
||||
'total_price' => $totalPrice,
|
||||
'total_price_per_night' => $perDayTotalPrice,
|
||||
'isPossible' => $isPossible,
|
||||
'priceResult' => $priceResult,
|
||||
]);
|
||||
|
||||
}
|
||||
throw new \Exception('Unknown FewoBookingController action: '. $action);
|
||||
}
|
||||
|
||||
private function calculatePriceNew(FewoBookingRequest $fewoBookingRequest, FewoLodging $lodging){
|
||||
|
||||
|
||||
$fromDate = clone $fewoBookingRequest->getFromDate();
|
||||
$toDate = clone $fewoBookingRequest->getToDate();
|
||||
|
||||
|
||||
$interval = \DateInterval::createFromDateString('1 day');
|
||||
$period = new \DatePeriod($fromDate, $interval, $toDate);
|
||||
$check_days = array();
|
||||
//days
|
||||
foreach ($period as $dt) {
|
||||
$check_days[] = $dt->format("d.m.Y");
|
||||
}
|
||||
|
||||
$result = [];
|
||||
$result['total'] = 0;
|
||||
$result['price_total'] = 0;
|
||||
$result['deposit'] = $lodging->getDeposit();
|
||||
$result['flatPrice'] = 0;
|
||||
$result['days'] = 0;
|
||||
$result['season'] = [];
|
||||
$frist_day = false;
|
||||
foreach ($this->calendar as $month => $calendar_month) {
|
||||
foreach ($calendar_month['data'] as $key => $day) {
|
||||
if($day && $day->getDate()) {
|
||||
if (in_array($day->getDate()->format("d.m.Y"), $check_days)) {
|
||||
|
||||
$season = $day->getPrice()->getSeason()->getName();
|
||||
if(!isset($result['season'][$season])){
|
||||
$result['season'][$season]['fromDay'] = $day->getDate()->format("d.m.Y");
|
||||
$result['flatPrice'] = $day->getPrice()->getFlatPrice();
|
||||
$result['season'][$season]['price'] = 0;
|
||||
$result['season'][$season]['numberDays'] = 0;
|
||||
$result['season'][$season]['perNight'] = $day->getPrice()->getPerNight();
|
||||
$result['season'][$season]['minimumStay'] = $day->getPrice()->getSeason()->getMinimumStay();
|
||||
}
|
||||
|
||||
if(!$frist_day){
|
||||
$result['season'][$season]['price'] += $day->getPrice()->getPerNight();
|
||||
$result['season'][$season]['numberDays'] ++;
|
||||
$result['season'][$season]['toDay'] = $day->getDate()->format("d.m.Y");
|
||||
$result['total'] += $day->getPrice()->getPerNight();
|
||||
|
||||
$result['days'] ++;
|
||||
|
||||
}else{
|
||||
$frist_day = true;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
$result['total_price'] = $result['flatPrice'] + $result['total'] + $result['deposit'];
|
||||
|
||||
return $result;
|
||||
|
||||
}
|
||||
|
||||
public function calculatePrice(FewoBookingRequest $fewoBookingRequest, FewoLodging $fewoLodging, FewoPrice $fewoPrice)
|
||||
{
|
||||
$result = $fewoLodging->getDeposit();
|
||||
|
|
|
|||
|
|
@ -81,11 +81,11 @@ class FewoBookingRequest
|
|||
|
||||
private $travelerCount;
|
||||
|
||||
private $acceptTerms = false;
|
||||
// private $acceptTerms = false;
|
||||
|
||||
private $acceptPrivacy = false;
|
||||
|
||||
private $acceptProcessing = false;
|
||||
// private $acceptProcessing = false;
|
||||
|
||||
private $lodging;
|
||||
|
||||
|
|
@ -325,22 +325,18 @@ class FewoBookingRequest
|
|||
$this->travelerCount = $travelerCount;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getAcceptTerms()
|
||||
|
||||
/* public function getAcceptTerms()
|
||||
{
|
||||
return $this->acceptTerms;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $acceptTerms
|
||||
*/
|
||||
|
||||
public function setAcceptTerms($acceptTerms)
|
||||
{
|
||||
$this->acceptTerms = $acceptTerms;
|
||||
}
|
||||
|
||||
*/
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
|
|
@ -357,24 +353,16 @@ class FewoBookingRequest
|
|||
$this->acceptPrivacy = $acceptPrivacy;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
/*
|
||||
public function isAcceptProcessing()
|
||||
{
|
||||
return $this->acceptProcessing;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $acceptProcessing
|
||||
*/
|
||||
public function setAcceptProcessing($acceptProcessing)
|
||||
{
|
||||
$this->acceptProcessing = $acceptProcessing;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getNumberDays()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -35,11 +35,13 @@ class FewoLodging
|
|||
/**
|
||||
* @var \AppBundle\Entity\FewoLodgingGroup
|
||||
*
|
||||
* @ORM\ManyToOne(targetEntity="FewoLodgingGroup")
|
||||
* @ORM\ManyToOne(targetEntity="FewoLodgingGroup", inversedBy="lodgings")
|
||||
)
|
||||
* @ORM\JoinColumns({
|
||||
* @ORM\JoinColumn(name="group_id", referencedColumnName="id")
|
||||
* })
|
||||
*/
|
||||
|
||||
private $group;
|
||||
|
||||
/**
|
||||
|
|
@ -523,6 +525,18 @@ class FewoLodging
|
|||
return $this->prices;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set Price
|
||||
*
|
||||
* @param \Doctrine\Common\Collections\Collection
|
||||
*
|
||||
* @return FewoLodging
|
||||
*/
|
||||
public function setPrices($prices)
|
||||
{
|
||||
$this->prices = $prices;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get prices
|
||||
*
|
||||
|
|
@ -538,9 +552,31 @@ class FewoLodging
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
public function getPricesByFromDateFilter($fromDate)
|
||||
{
|
||||
return $this->getPrices()->filter(function(FewoPrice $price) use ($fromDate) {
|
||||
if(!empty($price->getSeason()))
|
||||
var_dump($price->getSeason()->getFromDate() );
|
||||
echo "<br>";
|
||||
return ($price->getSeason()->getFromDate() >= $fromDate && $price->getSeason()->getToDate() <= $fromDate);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Get prices
|
||||
*
|
||||
* @return \Doctrine\Common\Collections\Collection
|
||||
*/
|
||||
public function getPricesFilterNow()
|
||||
{
|
||||
$now = new \DateTime();
|
||||
return $this->getPrices()->filter(function(FewoPrice $price) use ($now) {
|
||||
if(!empty($price->getSeason()))
|
||||
return ($price->getSeason()->getToDate() >= $now);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Add image
|
||||
*
|
||||
* @param \AppBundle\Entity\FewoLodgingImage $image
|
||||
|
|
|
|||
|
|
@ -28,4 +28,20 @@ class FewoLodgingRepository extends \Doctrine\ORM\EntityRepository
|
|||
return $qb->getQuery()->getOneOrNullResult();
|
||||
}
|
||||
|
||||
|
||||
public function findSeasonForLodgingBy($lodging, $fromDate)
|
||||
{
|
||||
$qb = $this->getEntityManager()->createQueryBuilder();
|
||||
$qb->select('s');
|
||||
$qb->from('AppBundle:FewoSeason', 's');
|
||||
$qb->innerJoin('s.prices', 'p');
|
||||
$qb->where($qb->expr()->eq('p.lodging', $lodging->getId()));
|
||||
$qb->andWhere('s.fromDate <= :fromDate');
|
||||
$qb->andWhere('s.toDate >= :fromDate');
|
||||
$qb->setParameter('fromDate', $fromDate);
|
||||
$qb->addOrderBy('s.fromDate', 'DESC');
|
||||
$qb->setMaxResults(1);
|
||||
return $qb->getQuery()->getOneOrNullResult();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,6 @@ class FewoSeason
|
|||
* @var \AppBundle\Entity\FewoPrice
|
||||
*
|
||||
* @ORM\OneToMany(targetEntity="FewoPrice", mappedBy="season", cascade={"persist", "remove"})
|
||||
* @ORM\OrderBy({"fromDate" = "DESC"})
|
||||
*/
|
||||
private $prices;
|
||||
|
||||
|
|
|
|||
|
|
@ -106,7 +106,8 @@ class PageRepository extends NestedTreeRepository
|
|||
->where('node.status > 0')
|
||||
->andWhere('node.template = \'overview\'')
|
||||
->andWhere('node.lvl = 0')
|
||||
->orderBy('node.lft,node.title,childPage.lft,childPage.title')
|
||||
->andWhere('node.order > 0')
|
||||
->orderBy('node.order,node.title, childPage.lft, childPage.title')
|
||||
->getQuery()
|
||||
->execute()
|
||||
;
|
||||
|
|
|
|||
|
|
@ -53,12 +53,14 @@ class TravelPeriodRepository extends \Doctrine\ORM\EntityRepository
|
|||
// Limit time period for seasons and travel dates
|
||||
$qb->innerJoin('tp.periods', 'p');
|
||||
$qb->addSelect('p');
|
||||
|
||||
$qb->innerJoin('p.dates', 'd');
|
||||
$qb->addSelect('d');
|
||||
$qb->where("((p.isSeason = 0 AND d.startDate >= '$startDateStr' AND d.endDate <= '$endDateStr') OR".
|
||||
$qb->andWhere("((p.isSeason = 0 AND d.startDate >= '$startDateStr' AND d.endDate <= '$endDateStr') OR".
|
||||
" (p.isSeason = 1 AND d.endDate >= '$startDateStr' AND".
|
||||
" DATE_ADD(d.startDate, tp.programDuration, 'DAY') <= '$endDateStr' AND p.status > 0))");
|
||||
|
||||
|
||||
// Prices
|
||||
// Instead of a single join to prices we add one join per price type. This reduces the execution time by
|
||||
// 150ms on the development system
|
||||
|
|
@ -91,6 +93,7 @@ class TravelPeriodRepository extends \Doctrine\ORM\EntityRepository
|
|||
}
|
||||
}
|
||||
$qb->groupBy('p.id, p_dep.id, d.id');
|
||||
// $qb->groupBy('p.id');
|
||||
|
||||
// Travel class
|
||||
$qb->innerJoin('p.class', 'cls', Expr\Join::WITH, 'cls.standard = 1');
|
||||
|
|
@ -100,8 +103,10 @@ class TravelPeriodRepository extends \Doctrine\ORM\EntityRepository
|
|||
->addSelect('tp_image');
|
||||
|
||||
// Sort travel programs
|
||||
$qb->addSelect('COALESCE(tp.position, 0) as HIDDEN position_sort_key');
|
||||
$qb->orderBy('position_sort_key');
|
||||
|
||||
// $qb->addSelect('COALESCE(tp.position, 0) as HIDDEN position_sort_key');
|
||||
// $qb->orderBy('position_sort_key');
|
||||
|
||||
//$qb->addOrderBy('LENGTH(tp.title)'); // Emulate natural sort
|
||||
$qb->addOrderBy('tp.title');
|
||||
$qb->addOrderBy('tp.id');
|
||||
|
|
@ -115,7 +120,6 @@ class TravelPeriodRepository extends \Doctrine\ORM\EntityRepository
|
|||
{
|
||||
return $travelPrograms;
|
||||
}
|
||||
|
||||
// Collect arrival point IDs for non mediated travel programs
|
||||
$isUsedArrivalPointById = [];
|
||||
foreach ($travelPrograms as $travelProgram)
|
||||
|
|
|
|||
|
|
@ -17,6 +17,11 @@ class Traveler
|
|||
|
||||
private $NATIONALITY = [
|
||||
1 => 'deutsch',
|
||||
2 => 'österreichisch',
|
||||
3 => 'schweizerisch',
|
||||
4 => 'italienisch',
|
||||
5 => 'spanisch',
|
||||
6 => 'französisch',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -176,7 +176,7 @@ class BookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
$i++;
|
||||
}
|
||||
|
||||
$resp = $this->httpPostAPIv3('create_drafts', [
|
||||
$resp = $this->httpPostAPIv3('draft/create_drafts_from_booking', [
|
||||
'travel_program_id' => $tp->getId(),
|
||||
'comfort' => $bookingRequest->getComfort(),
|
||||
'booking_before' => $bookingPriceInfo['booking_before'],
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
parent::__construct($logger);
|
||||
}
|
||||
|
||||
public function process(FewoBookingRequest $fewoBookingRequest, FewoLodging $fewoLodging, FewoPrice $fewoPrice)
|
||||
public function process(FewoBookingRequest $fewoBookingRequest, FewoLodging $fewoLodging, FewoPrice $fewoPrice, $priceResult)
|
||||
{
|
||||
$lead = $this->createLead($fewoBookingRequest);
|
||||
if ($lead === null)
|
||||
|
|
@ -28,7 +28,7 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
$this->warn('Failed creating lead in CRM', $fewoBookingRequest, Logger::ERROR);
|
||||
return false;
|
||||
}
|
||||
$bookingUrl = $this->createBooking($fewoBookingRequest, $fewoLodging, $fewoPrice, $lead['customer_id'], $lead['id']);
|
||||
$bookingUrl = $this->createBooking($fewoBookingRequest, $fewoLodging, $fewoPrice, $priceResult, $lead['customer_id'], $lead['id']);
|
||||
if ($bookingUrl === false)
|
||||
{
|
||||
$this->warn('Failed creating booking in CRM', $fewoBookingRequest, Logger::ERROR);
|
||||
|
|
@ -41,10 +41,31 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
$this->warn('Failed creating traveler in CRM.', $fewoBookingRequest);
|
||||
}
|
||||
*/
|
||||
$this->createNewDrafts($bookingUrl, $fewoBookingRequest, $fewoLodging, $fewoPrice, $priceResult);
|
||||
|
||||
return $bookingUrl;
|
||||
}
|
||||
|
||||
private function createNewDrafts($bookingUrl, $fewoBookingRequest, $fewoLodging, $fewoPrice, $priceResult){
|
||||
//make an request omn the new API
|
||||
|
||||
|
||||
$resp = $this->httpPostAPIv3('draft/create_drafts_from_fewo', [
|
||||
'booking_id' => array_values(array_slice(explode("/", $bookingUrl), -1))[0],
|
||||
'fewo_lodging_id' => $fewoLodging->getId(),
|
||||
'request_date' => (new \DateTime())->format('Y-m-d'), // required
|
||||
'priceResult' => $priceResult,
|
||||
'startDateStr' => $fewoBookingRequest->getFromDate()->format('Y-m-d'),
|
||||
'endDateStr' => $fewoBookingRequest->getToDate()->format('Y-m-d'),
|
||||
]);
|
||||
if (count($resp) == 0)
|
||||
{
|
||||
$this->warn('Failed retrieving newly created new draft object', $fewoBookingRequest);
|
||||
}
|
||||
return $resp;
|
||||
|
||||
}
|
||||
|
||||
private function createLead(FewoBookingRequest $fewoBookingRequest)
|
||||
{
|
||||
$resp = $this->httpPost('lead', ['lead' => [
|
||||
|
|
@ -88,15 +109,16 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
return null;
|
||||
}
|
||||
|
||||
private function createBooking(FewoBookingRequest $fewoBookingRequest, FewoLodging $lodging, FewoPrice $price, $customerId, $leadId)
|
||||
private function createBooking(FewoBookingRequest $fewoBookingRequest, FewoLodging $lodging, FewoPrice $price, $priceResult, $customerId, $leadId)
|
||||
{
|
||||
$resp = $this->httpPost('booking', ['booking' => [
|
||||
'booking_date' => (new \DateTime())->format('Y-m-d'),
|
||||
'customer_id' => $customerId,
|
||||
'lead_id' => $leadId,
|
||||
//'travel_country_id' => $tp->getTravelCountry(),
|
||||
//'travel_category_id' => $tp->getTravelCategory(),
|
||||
//'travelagenda_id' => $tp->getTravelAgenda(),
|
||||
'travel_country_id' => 27,
|
||||
'travel_category_id' => 7,
|
||||
'travel_company_id' => 1,
|
||||
'travelagenda_id' => 109,
|
||||
'sf_guard_user_id' => self::API_USER_ID,
|
||||
'branch_id' => 4,
|
||||
'website_id' => self::WEBSITE_ID,
|
||||
|
|
@ -104,13 +126,15 @@ class FewoBookingSternToursCrmExporter extends SternToursCrmExporter
|
|||
'start_date' => $fewoBookingRequest->getFromDate()->format('Y-m-d'), // required
|
||||
'end_date' => $fewoBookingRequest->getToDate()->format('Y-m-d'), // required
|
||||
'pax' => $fewoBookingRequest->getTravelerCount(),
|
||||
'travel_number' => substr($lodging->getName()." - ".$price->getSeason()->getName(), 0, 30),
|
||||
'price' => $fewoBookingRequest->getTotalPrice(),
|
||||
|
||||
'travel_number' => substr($price->getSeason()->getName(), 0, 30),
|
||||
'price' => $priceResult['total'],
|
||||
'price_total' => $priceResult['total_price'],
|
||||
'participant_salutation_id' => $fewoBookingRequest->getSalutation(),
|
||||
'participant_name' => $fewoBookingRequest->getLastName(),
|
||||
'participant_firstname' => $fewoBookingRequest->getFirstName(),
|
||||
//'participant_birthdate' => $bookingRequest->getTravelers()[0]->getBirthDate(),
|
||||
'new_drafts' => true,
|
||||
|
||||
]]);
|
||||
|
||||
if (!$resp['success'])
|
||||
|
|
|
|||
|
|
@ -16,8 +16,9 @@ abstract class SternToursCrmExporter
|
|||
|
||||
|
||||
const API_URL_LOCAL = 'http://cms-stern-tours.local/api';
|
||||
const API_v3_URL_LOCAL = 'http://mein.sterntours.local/';
|
||||
|
||||
const API_URL = 'https://cms.stern-tours.net/api';
|
||||
const API_v3_URL_LOCAL = 'http://crm-stern-tours.local/';
|
||||
const API_v3_URL = 'https://mein.sterntours.de/';
|
||||
|
||||
const API_KEY = 'f6077389c9ce710e554763a5de02c8ec';
|
||||
|
|
@ -82,7 +83,6 @@ abstract class SternToursCrmExporter
|
|||
$baseUrl = self::API_v3_URL_LOCAL.'api/';
|
||||
}
|
||||
|
||||
|
||||
$data = array(
|
||||
'email' => self::API_v3_MAIL,
|
||||
'password' => self::API_v3_PASS,
|
||||
|
|
@ -98,9 +98,7 @@ abstract class SternToursCrmExporter
|
|||
|
||||
$result = curl_exec($ch);
|
||||
$r = json_decode($result);
|
||||
|
||||
if($r->success) {
|
||||
if($action == 'create_drafts'){
|
||||
|
||||
//api URL
|
||||
$data = json_encode($postData);
|
||||
|
|
@ -108,7 +106,7 @@ abstract class SternToursCrmExporter
|
|||
curl_setopt($ch, CURLOPT_POST, true);
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
||||
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $r->success->token, 'Accept:application/json', 'Content-Type:application/json']);
|
||||
curl_setopt($ch, CURLOPT_URL, $baseUrl.'draft/create_drafts_from_booking');
|
||||
curl_setopt($ch, CURLOPT_URL, $baseUrl.$action);
|
||||
$result = curl_exec($ch);
|
||||
$r = json_decode($result);
|
||||
// var_dump($r);
|
||||
|
|
@ -116,7 +114,7 @@ abstract class SternToursCrmExporter
|
|||
curl_close($ch);
|
||||
return $r->success;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return $ret;
|
||||
|
|
|
|||
|
|
@ -55,11 +55,13 @@ class FewoBookingRequestType extends AbstractType
|
|||
'lodging' => null,
|
||||
'maxPersons' => null,
|
||||
'toDate' => null,
|
||||
'fromDate' => null,
|
||||
'data_class' => 'AppBundle\Entity\FewoBookingRequest',
|
||||
]);
|
||||
|
||||
$resolver->setAllowedTypes('lodging', ['AppBundle\Entity\FewoLodging']);
|
||||
$resolver->setAllowedTypes('toDate', ['string', 'NULL']);
|
||||
$resolver->setAllowedTypes('fromDate', ['string', 'NULL']);
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -70,9 +72,12 @@ class FewoBookingRequestType extends AbstractType
|
|||
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||
{
|
||||
$maxPersons = $options['maxPersons'];
|
||||
$fromDate= $options['fromDate'];
|
||||
$toDate = $options['toDate'];
|
||||
$fromDateDateTime = new \DateTime($fromDate);
|
||||
$toDateDateTime = new \DateTime($toDate);
|
||||
|
||||
|
||||
$TRAVELERS_CHOICES = [
|
||||
'1' => 1,
|
||||
];
|
||||
|
|
@ -86,11 +91,23 @@ class FewoBookingRequestType extends AbstractType
|
|||
}
|
||||
|
||||
$builder
|
||||
->add('toDate', StDateType::class, [
|
||||
->add('fromDate', StDateType::class, [
|
||||
//options
|
||||
//'widget' => 'single_text',
|
||||
'data' => $toDateDateTime,
|
||||
'format' => 'd.M.y'
|
||||
"attr" => array(
|
||||
"class" => "form-control",
|
||||
'placeholder' => 'StartDatum',
|
||||
'data-range' => 1,
|
||||
),
|
||||
'data' => $fromDateDateTime
|
||||
])
|
||||
->add('toDate', StDateType::class, [
|
||||
"attr" => array(
|
||||
"class" => "form-control",
|
||||
'placeholder' => 'EndDatum',
|
||||
'data-range' => 1,
|
||||
),
|
||||
'data' => $toDateDateTime
|
||||
|
||||
])
|
||||
->add('travelerCount', ChoiceType::class, [
|
||||
'choices' => $TRAVELERS_CHOICES,
|
||||
|
|
@ -132,9 +149,9 @@ class FewoBookingRequestType extends AbstractType
|
|||
]
|
||||
])
|
||||
->add('notes', TextareaType::class, ['required' => false])
|
||||
->add('acceptTerms', CheckboxType::class, ['required' => true])
|
||||
//->add('acceptTerms', CheckboxType::class, ['required' => true])
|
||||
->add('acceptPrivacy', CheckboxType::class, ['required' => true])
|
||||
->add('acceptProcessing', CheckboxType::class, ['required' => true])
|
||||
//->add('acceptProcessing', CheckboxType::class, ['required' => true])
|
||||
;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,9 +33,11 @@ class FewoLodgingType extends AbstractType
|
|||
])
|
||||
->add('description', null, [
|
||||
'required' => true,
|
||||
'attr' => array('rows' => '7')
|
||||
])
|
||||
->add('equipment', null, [
|
||||
'required' => true,
|
||||
'attr' => array('rows' => '7')
|
||||
])
|
||||
->add('adress1', null, [
|
||||
'required' => true,
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ use Doctrine\ORM\EntityManager;
|
|||
use Doctrine\ORM\PersistentCollection;
|
||||
use Symfony\Bundle\FrameworkBundle\Routing\Router;
|
||||
use Symfony\Component\HttpFoundation\RedirectResponse;
|
||||
use Symfony\Component\HttpFoundation\Session\Session;
|
||||
use Symfony\Component\HttpKernel\Controller\ControllerResolverInterface;
|
||||
use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
|
||||
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
|
||||
|
|
@ -32,6 +33,14 @@ class KernelControllerListener
|
|||
public function onKernelController(FilterControllerEvent $event)
|
||||
{
|
||||
$request = $event->getRequest();
|
||||
|
||||
$session = $request->getSession();
|
||||
$request->attributes->set('_open_side_about', 'open');
|
||||
if($session->get('time')){
|
||||
$request->attributes->set('_open_side_about', '');
|
||||
}
|
||||
$session->set('time', time());
|
||||
|
||||
if ($request->get('_controller') == 'AppBundle\Controller\DefaultController::defaultAction')
|
||||
{
|
||||
$repo = $this->em->getRepository('AppBundle:Page');
|
||||
|
|
|
|||
|
|
@ -15231,7 +15231,7 @@
|
|||
"bl": 0,
|
||||
"ft": 16,
|
||||
"ma": 0,
|
||||
"oA": 0,
|
||||
"oA": 1,
|
||||
"oAP": "/public/css/booking-min.css",
|
||||
"oF": 0,
|
||||
"oS": 3
|
||||
|
|
@ -15303,16 +15303,46 @@
|
|||
"oAP": "/public/css/custom.css.map",
|
||||
"oF": 0
|
||||
},
|
||||
"/public/css/daterangepicker.css": {
|
||||
"/public/css/daterangepicker-min.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
"ft": 16,
|
||||
"ma": 0,
|
||||
"oA": 0,
|
||||
"oAP": "/public/css/daterangepicker-min-min.css",
|
||||
"oF": 0,
|
||||
"oS": 3
|
||||
},
|
||||
"/public/css/daterangepicker.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
"ft": 16,
|
||||
"ma": 0,
|
||||
"oA": 1,
|
||||
"oAP": "/public/css/daterangepicker-min.css",
|
||||
"oF": 0,
|
||||
"oS": 3
|
||||
},
|
||||
"/public/css/fewo-min.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
"ft": 16,
|
||||
"ma": 0,
|
||||
"oA": 0,
|
||||
"oAP": "/public/css/fewo-min-min.css",
|
||||
"oF": 0,
|
||||
"oS": 3
|
||||
},
|
||||
"/public/css/fewo.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
"ft": 16,
|
||||
"ma": 0,
|
||||
"oA": 1,
|
||||
"oAP": "/public/css/fewo-min.css",
|
||||
"oF": 0,
|
||||
"oS": 3
|
||||
},
|
||||
"/public/css/font-awesome-4.7.0.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
|
|
@ -15427,6 +15457,40 @@
|
|||
"sI": 1,
|
||||
"sU": 0
|
||||
},
|
||||
"/public/css/my-fewo.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
"ft": 16,
|
||||
"ma": 0,
|
||||
"oA": 0,
|
||||
"oAP": "/public/css/my-fewo-min.css",
|
||||
"oF": 0,
|
||||
"oS": 3
|
||||
},
|
||||
"/public/css/my-fewo.css.map": {
|
||||
"cB": 0,
|
||||
"ft": 8192,
|
||||
"oA": 0,
|
||||
"oAP": "/public/css/my-fewo.css.map",
|
||||
"oF": 0
|
||||
},
|
||||
"/public/css/my-fewo.less": {
|
||||
"aP": 0,
|
||||
"bl": 0,
|
||||
"eJ": 0,
|
||||
"ft": 1,
|
||||
"ie": 1,
|
||||
"iI": 0,
|
||||
"ma": 1,
|
||||
"mS": 0,
|
||||
"oA": 0,
|
||||
"oAP": "/Users/kevinadametz/Websites/sterntours-3/trunk/web/css/my-fewo.css",
|
||||
"oF": 6,
|
||||
"oS": 1,
|
||||
"rwU": 0,
|
||||
"sI": 0,
|
||||
"sU": 0
|
||||
},
|
||||
"/public/css/owl-carousel.css": {
|
||||
"aP": 1,
|
||||
"bl": 0,
|
||||
|
|
@ -16644,8 +16708,8 @@
|
|||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/booking-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"oF": 1,
|
||||
"sC": 0,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/bootstrap-3.3.7.js": {
|
||||
|
|
@ -16662,7 +16726,7 @@
|
|||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/bootstrap-select-1.12.0-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
|
|
@ -16708,14 +16772,24 @@
|
|||
"sC": 0,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/fewoBooking-min.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/fewoBooking-min-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/fewoBooking.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/fewoBooking-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"oAP": "/Users/kevinadametz/Websites/sterntours-3/trunk/web/js/fewoBooking-min.js",
|
||||
"oF": 7,
|
||||
"sC": 0,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/jquery-3.1.1.js": {
|
||||
|
|
@ -16808,6 +16882,16 @@
|
|||
"sC": 1,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/min/fewoBooking-min.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/min/fewoBooking-min-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/min/owl.carousel-2.3.4-min.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
|
|
@ -16818,6 +16902,16 @@
|
|||
"sC": 1,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/min/travelProgram-min.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/min/travelProgram-min-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/onloadCSS.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
|
|
@ -16862,7 +16956,7 @@
|
|||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/js/min/parallax-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
|
|
@ -16875,7 +16969,7 @@
|
|||
"oA": 0,
|
||||
"oAP": "/public/js/min/travelProgram-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"sC": 0,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/js/validator.js": {
|
||||
|
|
@ -16917,7 +17011,7 @@
|
|||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oA": 1,
|
||||
"oAP": "/public/vendor/daterangepicker/min/daterangepicker-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
|
|
@ -17013,11 +17107,21 @@
|
|||
"rFN": 0,
|
||||
"uCM": 0
|
||||
},
|
||||
"/public/vendor/daterangepicker/moment.min.js": {
|
||||
"/public/vendor/daterangepicker/min/daterangepicker-min.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 0,
|
||||
"oAP": "/public/vendor/daterangepicker/min/min/daterangepicker-min-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
"tS": 0
|
||||
},
|
||||
"/public/vendor/daterangepicker/moment.min.js": {
|
||||
"ft": 64,
|
||||
"ma": 0,
|
||||
"mi": 1,
|
||||
"oA": 1,
|
||||
"oAP": "/public/vendor/daterangepicker/min/moment.min-min.js",
|
||||
"oF": 0,
|
||||
"sC": 1,
|
||||
|
|
@ -17677,46 +17781,54 @@
|
|||
"position": 2,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 0,
|
||||
"linkedFileAbbreviatedPath": "/public/js/parallax.js",
|
||||
"position": 3,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 0,
|
||||
"linkedFileAbbreviatedPath": "/public/js/bootstrap-select-1.12.0.js",
|
||||
"position": 4,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/js/bootstrap-select-1.13.2.js",
|
||||
"position": 5,
|
||||
"position": 3,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/js/validator.js",
|
||||
"position": 6,
|
||||
"position": 4,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/js/cookieconsent.min.js",
|
||||
"position": 7,
|
||||
"position": 5,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/js/owl.carousel-2.3.4.js",
|
||||
"position": 8,
|
||||
"position": 6,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/js/lozad.js",
|
||||
"position": 9,
|
||||
"position": 7,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/js/booking.js",
|
||||
"position": 8,
|
||||
"type": 0
|
||||
}
|
||||
],
|
||||
"/public/js/fewoBooking.js": [
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/vendor/daterangepicker/moment.min.js",
|
||||
"position": 0,
|
||||
"type": 0
|
||||
},
|
||||
{
|
||||
"followForSyntaxChecking": 1,
|
||||
"linkedFileAbbreviatedPath": "/public/vendor/daterangepicker/daterangepicker.js",
|
||||
"position": 1,
|
||||
"type": 0
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -381,6 +381,7 @@ a,
|
|||
-webkit-border-radius: 120px;
|
||||
-moz-border-radius: 120px;
|
||||
border-radius: 120px;
|
||||
border:1px solid #fff !important;
|
||||
}
|
||||
.btn-white.btn-normal,
|
||||
.btn-default.btn-normal,
|
||||
|
|
@ -396,7 +397,7 @@ a,
|
|||
font-size: 15px !important;
|
||||
height: 50px !important;
|
||||
line-height: 20px;
|
||||
padding: 16px 45px !important;
|
||||
padding: 16px 35px !important;
|
||||
}
|
||||
.btn-default.btn-sm,
|
||||
.btn-primary.btn-sm,
|
||||
|
|
@ -1233,10 +1234,11 @@ a[id^="video_"]:before,
|
|||
box-shadow: 0px 0px 8px 5px rgba(255, 255, 255, 0.4);
|
||||
}
|
||||
.btn-over-slider-bottom {
|
||||
top: 280px !important;
|
||||
top: 270px !important;
|
||||
}
|
||||
.st-slider-booking-btn-bottom {
|
||||
background-color: #777777 !important;
|
||||
.btn-primary.btn-sm.st-slider-booking-btn-bottom {
|
||||
text-transform: none;
|
||||
font-size: 15px!important;
|
||||
}
|
||||
.price-over-slider {
|
||||
position: absolute;
|
||||
|
|
@ -2116,7 +2118,7 @@ body.modal-open {
|
|||
.fullscreen {
|
||||
width: 100%;
|
||||
min-height: 100%;
|
||||
padding-top: 150px;
|
||||
padding-top: 145px;
|
||||
}
|
||||
.section.padding-top-20 {
|
||||
padding-top: 20px;
|
||||
|
|
@ -2197,7 +2199,7 @@ body.modal-open {
|
|||
width: 12px;
|
||||
height: 12px;
|
||||
}
|
||||
.carousel.fewo .carousel-indicators {
|
||||
.carousel .carousel-indicators {
|
||||
bottom: 0px;
|
||||
}
|
||||
.start-slider {
|
||||
|
|
@ -2230,8 +2232,8 @@ body.modal-open {
|
|||
top: 49px;
|
||||
}
|
||||
.carousel-indicators li {
|
||||
width: 26px;
|
||||
height: 26px;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #ffc926;
|
||||
border-radius: 50%;
|
||||
|
|
@ -2239,12 +2241,10 @@ body.modal-open {
|
|||
}
|
||||
.carousel-indicators li:hover,
|
||||
.carousel-indicators .active {
|
||||
width: 26px;
|
||||
height: 26px;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
background-color: #ffc926;
|
||||
border: 1px solid #fff;
|
||||
border-radius: 50%;
|
||||
box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4);
|
||||
}
|
||||
a.carousel-control .glyphicon {
|
||||
color: #ffc926;
|
||||
|
|
@ -2256,7 +2256,6 @@ a.carousel-control .glyphicon {
|
|||
}
|
||||
.px-bullets {
|
||||
position: absolute;
|
||||
bottom: 20px;
|
||||
right: 50%;
|
||||
bottom: -20px;
|
||||
}
|
||||
|
|
@ -2421,12 +2420,13 @@ i {
|
|||
display: -moz-box;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#content section .nav-tabs .fa {
|
||||
color: #ffd659;
|
||||
padding-bottom: 3px;
|
||||
}
|
||||
#content section .nav-tabs > li > a {
|
||||
margin-right: 2px;
|
||||
margin-right: 0px;
|
||||
line-height: 1.42857143;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 0;
|
||||
|
|
@ -2434,19 +2434,33 @@ i {
|
|||
background-color: #c3c3c3;
|
||||
font-weight: 600;
|
||||
white-space: nowrap;
|
||||
padding: 10px 10px;
|
||||
padding: 10px 12px 10px 50px;
|
||||
cursor: pointer;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#content section .nav-tabs > li > a.child-first {
|
||||
padding-left: 38px;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li > a.child-sec {
|
||||
padding-left: 55px;
|
||||
}
|
||||
|
||||
|
||||
#content section .nav-tabs > li.active > a,
|
||||
#content section .nav-tabs > li.active > a:hover,
|
||||
#content section .nav-tabs > li.active > a:focus,
|
||||
#content section .nav-tabs > li > a:hover,
|
||||
#content section .nav-tabs > li > a:focus {
|
||||
color: #fff;
|
||||
color: #1a457c;
|
||||
background-color: #ffc926;
|
||||
border: 1px solid #ddd;
|
||||
border: 1px solid #ffc926;
|
||||
border-bottom-color: transparent;
|
||||
cursor: pointer;
|
||||
box-shadow: -2px 0 16px -6px rgba(0,0,0,.5);
|
||||
}
|
||||
#content section .nav-tabs > li.active > a .fa,
|
||||
#content section .nav-tabs > li.active > a:hover .fa,
|
||||
|
|
@ -2464,7 +2478,197 @@ i {
|
|||
#content section .scroller-left-nav-tabs {
|
||||
display: none;
|
||||
}
|
||||
@media (max-width: 992px) {
|
||||
|
||||
|
||||
#content section .nav-tabs > li a::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: -21px;
|
||||
width: 44px;
|
||||
height: 42px;
|
||||
transform: scale(0.707) rotate(45deg);
|
||||
z-index: 1;
|
||||
border-radius: 0 5px 0 50px;
|
||||
background: #c3c3c3;
|
||||
box-shadow: 2px -2px 0 2px #ffffff;
|
||||
-webkit-transition: all 0.3s ease-in-out;
|
||||
-moz-transition: all 0.3s ease-in-out;
|
||||
-ms-transition: all 0.3s ease-in-out;
|
||||
-o-transition: all 0.3s ease-in-out;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li.active > a::after,
|
||||
#content section .nav-tabs > li.active > a:hover::after,
|
||||
#content section .nav-tabs > li.active > a:focus::after,
|
||||
#content section .nav-tabs > li > a:hover::after,
|
||||
#content section .nav-tabs > li > a:focus::after{
|
||||
background: #ffc926 !important;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li:last-child a::after {
|
||||
right: -18px;
|
||||
|
||||
|
||||
}
|
||||
#content section .nav-tabs > li:last-child a {
|
||||
margin-right: 20px;
|
||||
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li:first-child a {
|
||||
border-bottom-left-radius: 4px;
|
||||
border-top-left-radius: 4px;
|
||||
}
|
||||
#content section .nav-tabs > li:last-child a {
|
||||
border-bottom-right-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
|
||||
|
||||
#content section .nav-tabs > li a span:first-child {
|
||||
position: absolute;
|
||||
left: 26px;
|
||||
top:8px;
|
||||
display: inline-block;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
line-height: 23px;
|
||||
border-radius: 50%;
|
||||
background-color: #fff;
|
||||
color: #777;
|
||||
text-align: center;
|
||||
|
||||
|
||||
}
|
||||
#content section .nav-tabs > li.active a span:first-child {
|
||||
color: #1a457c;
|
||||
border-color: #777;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li a.child-first span:first-child {
|
||||
left: 8px;
|
||||
|
||||
}
|
||||
|
||||
@media (max-width: 786px) {
|
||||
#content section .nav-tabs {
|
||||
display: block;
|
||||
}
|
||||
#content section .nav-tabs > li > a.child-sec {
|
||||
padding-left: 38px;
|
||||
}
|
||||
#content section .nav-tabs > li a span:first-child {
|
||||
left: 8px;
|
||||
}
|
||||
#content section .nav-tabs > li a {
|
||||
border-bottom-left-radius: 4px;
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li > a {
|
||||
padding-left: 40px;
|
||||
padding-right: 30px;
|
||||
float:left;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li > a.child-first {
|
||||
padding-left: 40px;
|
||||
float:none;
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li > a.child-sec {
|
||||
padding-left: 40px;
|
||||
float:none;
|
||||
margin-right: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 540px) and (max-width: 786px) {
|
||||
#content section .nav-tabs > li > a.child-first {
|
||||
padding-left: 40px;
|
||||
float:left;
|
||||
margin-right: 0px;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li > a.child-sec {
|
||||
padding-left: 55px;
|
||||
float:left;
|
||||
margin-right: 0px;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li a.child-sec span:first-child {
|
||||
left: 26px;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
#content section .nav-tabs > li a::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-top: 22px solid transparent;
|
||||
border-bottom: 21px solid transparent;
|
||||
border-left: 20px solid #c3c3c3;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
margin-top: -22px;
|
||||
left: 100%;
|
||||
z-index: 2;
|
||||
-webkit-transition: all 0.3s ease-in-out;
|
||||
-moz-transition: all 0.3s ease-in-out;
|
||||
-ms-transition: all 0.3s ease-in-out;
|
||||
-o-transition: all 0.3s ease-in-out;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li a::before {
|
||||
content: " ";
|
||||
display: block;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-top: 22px solid transparent;
|
||||
border-bottom: 21px solid transparent;
|
||||
border-left: 20px solid white;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
margin-top: -22px;
|
||||
margin-left: 3px;
|
||||
left: 100%;
|
||||
z-index: 1;
|
||||
}
|
||||
#content section .nav-tabs > li.active > a::after,
|
||||
#content section .nav-tabs > li.active > a:hover::after,
|
||||
#content section .nav-tabs > li.active > a:focus::after,
|
||||
#content section .nav-tabs > li > a:hover::after,
|
||||
#content section .nav-tabs > li > a:focus::after{
|
||||
border-left-color: #ffc926 !important;
|
||||
}
|
||||
|
||||
#content section .nav-tabs > li:first-child a {
|
||||
border-bottom-left-radius: 4px;
|
||||
border-top-left-radius: 4px;
|
||||
}
|
||||
#content section .nav-tabs > li:last-child a {
|
||||
border-bottom-right-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
#content section .nav-tabs > li:last-child a::after {
|
||||
border: 0;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
@media (max-width: 991px) {
|
||||
#content section .scroller-nav-tabs {
|
||||
display: block;
|
||||
text-align: center;
|
||||
|
|
@ -2507,6 +2711,7 @@ i {
|
|||
width: auto;
|
||||
}
|
||||
}
|
||||
*/
|
||||
.result-wrapper .table {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
|
@ -3383,7 +3588,7 @@ footer.clearfix {
|
|||
#sidebar .widget {
|
||||
position: relative;
|
||||
display: block;
|
||||
margin-bottom: 40px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
#sidebar ul {
|
||||
padding: 0;
|
||||
|
|
@ -3403,22 +3608,50 @@ footer.clearfix {
|
|||
display: none;
|
||||
content: "";
|
||||
}
|
||||
@media (max-width: 768px) {
|
||||
|
||||
#sidebar .widget,
|
||||
#sidebar .widget-title {
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
#sidebar .widget-title {
|
||||
font-size: 23px;
|
||||
position: relative;
|
||||
padding-bottom: 5px;
|
||||
border-bottom: 1px solid #ffc926;
|
||||
font-weight: normal;
|
||||
margin-bottom: 4px;
|
||||
color: #777777;
|
||||
line-height: 1.2em;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
@media (max-width: 992px) {
|
||||
#sidebar .widget a.collapse-widget {
|
||||
color: #777777;
|
||||
font-size: 20px;
|
||||
}
|
||||
#sidebar .widget a.collapse-widget::before {
|
||||
display: inline-block;
|
||||
font-family: FontAwesome;
|
||||
content: "\f106";
|
||||
padding: 6px 10px 0 0;
|
||||
font-size: 32px;
|
||||
padding:0 6px 0 6px;
|
||||
font-size: 28px;
|
||||
color: #ffc926;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
#sidebar .widget a.collapse-widget.collapsed::before {
|
||||
display: inline-block;
|
||||
content: "\f107";
|
||||
}
|
||||
#sidebar .widget {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
#sidebar .widget-title {
|
||||
border-bottom-color: #dfdfdf;
|
||||
background: #efefef;
|
||||
line-height: 1em;
|
||||
padding-top: 2px;
|
||||
}
|
||||
}
|
||||
#sidebar .widget .hl5,
|
||||
#sidebar .widget .hl5 a {
|
||||
|
|
@ -3435,7 +3668,8 @@ footer.clearfix {
|
|||
#sidebar .widget .boxwidget {
|
||||
text-align: center;
|
||||
margin: 0 auto;
|
||||
padding-bottom: 20px;
|
||||
padding-bottom: 0px;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
#sidebar .widget .searchwidget {
|
||||
background-color: #eaeaea;
|
||||
|
|
@ -3455,6 +3689,13 @@ footer.clearfix {
|
|||
padding-left: 8px;
|
||||
font-size: 18px;
|
||||
}
|
||||
#sidebar .widget .searchwidget {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
#sidebar .widget .boxwidget {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#sidebar .widget .newswidget {
|
||||
border-bottom: 1px solid #777777;
|
||||
padding-bottom: 10px;
|
||||
|
|
@ -3576,22 +3817,7 @@ footer.clearfix {
|
|||
width: 94%;
|
||||
padding: 0 0 0 0;
|
||||
}
|
||||
#sidebar .widget,
|
||||
#sidebar .widget-title {
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
#sidebar .widget-title {
|
||||
font-size: 25px;
|
||||
position: relative;
|
||||
padding-bottom: 8px;
|
||||
border-bottom: 1px solid #ffc926;
|
||||
font-weight: normal;
|
||||
margin-bottom: 20px;
|
||||
color: #777777;
|
||||
line-height: 1.2em;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/*
|
||||
14) COLOR SCHEMES
|
||||
===============================================================
|
||||
|
|
@ -3941,16 +4167,16 @@ a,
|
|||
margin-right: -30px;
|
||||
}
|
||||
.btn-over-slider {
|
||||
top: 110px;
|
||||
top: 80px;
|
||||
}
|
||||
.btn-over-slider-bottom {
|
||||
top: 320px;
|
||||
}
|
||||
.st-slider-booking-btn-bottom {
|
||||
background-color: #777777 !important;
|
||||
|
||||
}
|
||||
.price-over-slider {
|
||||
top: 115px;
|
||||
top: 85px;
|
||||
}
|
||||
#sidebar #side-navigation .side-menu {
|
||||
width: 100%;
|
||||
|
|
@ -4115,7 +4341,7 @@ a,
|
|||
width: 18px;
|
||||
height: 18px;
|
||||
left: 0;
|
||||
top: 3px;
|
||||
top: 0px;
|
||||
margin-left: -20px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 3px;
|
||||
|
|
@ -4130,10 +4356,10 @@ a,
|
|||
width: 16px;
|
||||
height: 16px;
|
||||
left: 0;
|
||||
top: 0;
|
||||
top: -2px;
|
||||
margin-left: -20px;
|
||||
padding-left: 3px;
|
||||
padding-top: 1px;
|
||||
padding-top: 0;
|
||||
font-size: 11px;
|
||||
color: #555555;
|
||||
}
|
||||
|
|
@ -5892,12 +6118,13 @@ input[type="radio"] .styled:checked + label::after {
|
|||
|
||||
}
|
||||
.boxwidget .video-wrap {
|
||||
height: 180px;
|
||||
height: 220px;
|
||||
}
|
||||
}
|
||||
|
||||
.bootstrap-select .dropdown-toggle .filter-option {
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -5911,7 +6138,6 @@ input[type="radio"] .styled:checked + label::after {
|
|||
transform: translate(0%, -50%);
|
||||
text-align: center;
|
||||
z-index: 10;
|
||||
|
||||
}
|
||||
|
||||
.u-icon-v3 {
|
||||
|
|
@ -5923,7 +6149,6 @@ input[type="radio"] .styled:checked + label::after {
|
|||
font-size: 1rem;
|
||||
line-height: 1.2rem;
|
||||
font-weight: 500;
|
||||
|
||||
display: inline-block;
|
||||
padding: 10px 15px;
|
||||
-webkit-transition: all .2s ease-in-out;
|
||||
|
|
@ -5932,14 +6157,12 @@ input[type="radio"] .styled:checked + label::after {
|
|||
-webkit-box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.5);
|
||||
-moz-box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.5);
|
||||
box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.5);
|
||||
|
||||
}
|
||||
|
||||
.u-icon-v3 i {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
z-index: 12;
|
||||
|
||||
}
|
||||
|
||||
.u-icon-v3:hover {
|
||||
|
|
@ -5947,7 +6170,6 @@ input[type="radio"] .styled:checked + label::after {
|
|||
-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
|
||||
-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
|
||||
box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
|
||||
|
||||
}
|
||||
.content-pane .h3l {
|
||||
padding-bottom: 10px;
|
||||
|
|
@ -5992,3 +6214,434 @@ hr.primary {
|
|||
height: 100%;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
|
||||
.u-go-to-v1 {
|
||||
width: 3.57143rem;
|
||||
height: 3.57143rem;
|
||||
display: block;
|
||||
background-color: rgba(255, 255, 255, 0.7);
|
||||
border-radius: 50%;
|
||||
-webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
|
||||
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
|
||||
-webkit-transition: .3s ease-out;
|
||||
-o-transition: .3s ease-out;
|
||||
transition: .3s ease-out;
|
||||
z-index: 11;
|
||||
font-size: 22px;
|
||||
}
|
||||
.u-go-to-v1 i {
|
||||
position: absolute;
|
||||
color: #555;
|
||||
top: 52%;
|
||||
left: 50%;
|
||||
-webkit-transform: translate(-50%, -50%);
|
||||
-ms-transform: translate(-50%, -50%);
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
.u-go-to-v1:hover, .u-go-to-v1:focus:hover {
|
||||
text-decoration: none;
|
||||
color: #fff;
|
||||
background-color: #ffc926;
|
||||
}
|
||||
.u-go-to-v1:hover i, .u-go-to-v1:focus:hover i {
|
||||
color: #fff;
|
||||
|
||||
}
|
||||
.animated {
|
||||
-webkit-animation-duration: 1s;
|
||||
animation-duration: 1s;
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
@-webkit-keyframes zoomIn {
|
||||
from {
|
||||
opacity: 0;
|
||||
-webkit-transform: scale3d(0.3, 0.3, 0.3);
|
||||
transform: scale3d(0.3, 0.3, 0.3);
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes zoomIn {
|
||||
from {
|
||||
opacity: 0;
|
||||
-webkit-transform: scale3d(0.3, 0.3, 0.3);
|
||||
transform: scale3d(0.3, 0.3, 0.3);
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.zoomIn {
|
||||
-webkit-animation-name: zoomIn;
|
||||
animation-name: zoomIn;
|
||||
}
|
||||
|
||||
@-webkit-keyframes zoomOut {
|
||||
from {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 0;
|
||||
-webkit-transform: scale3d(0.3, 0.3, 0.3);
|
||||
transform: scale3d(0.3, 0.3, 0.3);
|
||||
}
|
||||
|
||||
to {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes zoomOut {
|
||||
from {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 0;
|
||||
-webkit-transform: scale3d(0.3, 0.3, 0.3);
|
||||
transform: scale3d(0.3, 0.3, 0.3);
|
||||
}
|
||||
|
||||
to {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.zoomOut {
|
||||
-webkit-animation-name: zoomOut;
|
||||
animation-name: zoomOut;
|
||||
}
|
||||
|
||||
.price-over-slider.next-over {
|
||||
left: 15px;
|
||||
border-left: 0;
|
||||
top: 125px;
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.price-over-slider.next-over {
|
||||
left: 150px;
|
||||
border-left: 1px solid #fff;
|
||||
top: 75px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.price-over-slider.next-over {
|
||||
top: 135px;
|
||||
}
|
||||
|
||||
}
|
||||
.btn-booking-form {
|
||||
font-size: 15px;
|
||||
border: 1px solid #fff;
|
||||
box-shadow: 0 0 2px 2px rgba(0,0,0,.1);
|
||||
}
|
||||
|
||||
.btn-booking-form {
|
||||
background: transparent;
|
||||
transition: all 0.7s ease-out;
|
||||
background: linear-gradient(270deg, rgba(255, 181, 16, 0.8), rgb(255, 197, 41), rgba(100, 136, 89, 1), rgba(100, 136, 89, 0.8));
|
||||
background-position: 1% 70%;
|
||||
background-size: 300% 300%;
|
||||
}
|
||||
|
||||
.btn-booking-form:hover {
|
||||
border: 1px solid rgba(255, 201, 38, 1);
|
||||
background-position: 99% 50%;
|
||||
}
|
||||
.u-icon-v3 i {
|
||||
margin-top: -3px;
|
||||
|
||||
}
|
||||
.u-icon-v3:hover i {
|
||||
animation: slide1 2s ease-in-out infinite;
|
||||
margin-top: -3px;
|
||||
|
||||
}
|
||||
.btn-booking-form i {
|
||||
animation: slide1 3s ease-in-out infinite;
|
||||
margin-top: -6px;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
@keyframes slide1 {
|
||||
0% {opacity: 1; transform: translateX(0px) scale(1);}
|
||||
25%{opacity: 0; transform:translateX(8px) scale(0.9);}
|
||||
26%{opacity: 0; transform:translateX(-5px) scale(0.9);}
|
||||
55% {opacity: 1; transform: translateX(0px) scale(1);}
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.price-over-slider.next-over {
|
||||
left: 150px;
|
||||
border-left: 1px solid #fff;
|
||||
top: 75px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.price-over-slider.next-over {
|
||||
top: 165px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@-webkit-keyframes burst {
|
||||
0% {
|
||||
opacity: 1
|
||||
}
|
||||
75% {
|
||||
-webkit-transform: scale(1.6);
|
||||
transform: scale(1.6);
|
||||
opacity: 1
|
||||
}
|
||||
85% {
|
||||
-webkit-transform: scale(1.7);
|
||||
transform: scale(1.7);
|
||||
opacity: 0
|
||||
}
|
||||
100% {
|
||||
opacity: 0
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes burst {
|
||||
0% {
|
||||
opacity: 1
|
||||
}
|
||||
75% {
|
||||
-webkit-transform: scale(1.6);
|
||||
transform: scale(1.6);
|
||||
opacity: 1
|
||||
}
|
||||
85% {
|
||||
-webkit-transform: scale(1.7);
|
||||
transform: scale(1.7);
|
||||
opacity: 0
|
||||
}
|
||||
100% {
|
||||
opacity: 0
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.faa-burst.animated, .faa-burst.animated-hover:hover, .faa-parent.animated-hover:hover > .faa-burst {
|
||||
-webkit-animation: burst 3s infinite linear;
|
||||
animation: burst 3s infinite linear;
|
||||
margin-left: 3px;
|
||||
margin-right: 3px;
|
||||
}
|
||||
|
||||
.faa-burst.animated-hover.faa-fast:hover, .faa-burst.animated.faa-fast,
|
||||
.faa-parent.animated-hover:hover > .faa-burst.faa-fast {
|
||||
-webkit-animation: burst 1s infinite linear;
|
||||
animation: burst 1s infinite linear
|
||||
}
|
||||
|
||||
.faa-burst.animated-hover.faa-slow:hover, .faa-burst.animated.faa-slow,
|
||||
.faa-parent.animated-hover:hover > .faa-burst.faa-slow {
|
||||
-webkit-animation: burst 3s infinite linear;
|
||||
animation: burst 3s infinite linear
|
||||
}
|
||||
|
||||
@-webkit-keyframes falling {
|
||||
0% {
|
||||
-webkit-transform: translateY(-50%);
|
||||
transform: translateY(-50%);
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
25% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
opacity: 1
|
||||
}
|
||||
|
||||
75% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
opacity: 1
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: translateY(50%);
|
||||
transform: translateY(50%);
|
||||
opacity: 0
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes falling {
|
||||
0% {
|
||||
-webkit-transform: translateY(-50%);
|
||||
transform: translateY(-50%);
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
25% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
opacity: 1
|
||||
}
|
||||
|
||||
75% {
|
||||
-webkit-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
opacity: 1
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: translateY(50%);
|
||||
transform: translateY(50%);
|
||||
opacity: 0
|
||||
}
|
||||
}
|
||||
|
||||
.faa-falling.animated, .faa-falling.animated-hover:hover, .faa-parent.animated-hover:hover > .faa-falling {
|
||||
-webkit-animation: falling 3s linear infinite;
|
||||
animation: falling 3s linear infinite
|
||||
}
|
||||
|
||||
.faa-falling.animated-hover.faa-fast:hover, .faa-falling.animated.faa-fast,
|
||||
.faa-parent.animated-hover:hover > .faa-falling.faa-fast {
|
||||
-webkit-animation: falling 1s linear infinite;
|
||||
animation: falling 1s linear infinite
|
||||
}
|
||||
|
||||
.faa-falling.animated-hover.faa-slow:hover, .faa-falling.animated.faa-slow,
|
||||
.faa-parent.animated-hover:hover > .faa-falling.faa-slow {
|
||||
-webkit-animation: falling 3s linear infinite;
|
||||
animation: falling 3s linear infinite
|
||||
}
|
||||
|
||||
|
||||
.icons-percent::before {
|
||||
content: '%';
|
||||
font-weight: 700;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
font-size: 14px;
|
||||
float: left;
|
||||
background: #ffc926;
|
||||
color: #fff;
|
||||
border-radius: 50%;
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
.table>tbody>tr>td {
|
||||
}
|
||||
|
||||
.icons-percent {
|
||||
font-family: Oswald, sans-serif;
|
||||
position: absolute;
|
||||
top: -8px;
|
||||
left: -28px;
|
||||
}
|
||||
|
||||
.table .old_price {
|
||||
font-size: 0.9em;
|
||||
text-align: right;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
}
|
||||
.table .new_price {
|
||||
text-align: right;
|
||||
font-size: 1.05em;
|
||||
}
|
||||
|
||||
.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
|
||||
padding: 6px 4px;
|
||||
|
||||
}
|
||||
|
||||
.small-table-hidden {
|
||||
display: table-cell;
|
||||
}
|
||||
.small-table-show {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (min-width: 992px){
|
||||
.btn-booking-form br.hidden {
|
||||
display: inline-block !important;
|
||||
}
|
||||
.btn-booking-form span.hidden {
|
||||
display: inline-block !important;
|
||||
}
|
||||
.btn-booking-form i {
|
||||
margin-bottom: -12px !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@media (min-width: 992px) and (max-width: 1140px){
|
||||
|
||||
.table>tbody>tr>td.price{
|
||||
text-align: right;
|
||||
}
|
||||
.icons-percent {
|
||||
text-align: center;
|
||||
}
|
||||
.btn-booking-form {
|
||||
padding: 7px 12px;
|
||||
}
|
||||
|
||||
.small-table-hidden {
|
||||
display: none;
|
||||
}
|
||||
.small-table-show {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1141px){
|
||||
|
||||
.table>tbody>tr>td.price{
|
||||
text-align: right;
|
||||
}
|
||||
.icons-percent {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.container-fluid {
|
||||
max-width: 1280px;
|
||||
}
|
||||
.checkbox input[type=checkbox]~span.checkbox_marker::before {
|
||||
animation: slide1 3s ease-in-out infinite;
|
||||
font-family: 'FontAwesome';
|
||||
font-size: 20px;
|
||||
line-height: 20px;
|
||||
content: "\f101";
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
left: 0;
|
||||
top: -1px;
|
||||
margin-left: -20px;
|
||||
padding-left: 3px;
|
||||
padding-top: 0px;
|
||||
color: #ce9d1e;
|
||||
transition: visibility 0.5s, opacity 0.5s linear;
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
|
||||
}
|
||||
.checkbox input[type=checkbox]:checked~span.checkbox_marker::before {
|
||||
visibility: hidden;
|
||||
opacity: 0;
|
||||
|
||||
}
|
||||
1
trunk/src/AppBundle/Resources/public/css/daterangepicker-min.css
vendored
Normal file
|
|
@ -199,47 +199,54 @@
|
|||
border-radius: 0;
|
||||
cursor: not-allowed;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.bookable {
|
||||
background-color: rgba(88, 155, 92, 0.4);
|
||||
cursor: pointer !important;
|
||||
border-radius: 0;
|
||||
font-weight: bold;
|
||||
text-decoration: underline;
|
||||
|
||||
}
|
||||
.daterangepicker td.bookable:hover {
|
||||
background-color: rgba(88, 155, 92, 0.50);
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-begin {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #f0faf0 0%, #f0faf0 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0faf0), color-stop(49%, #f0faf0), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0faf0 0%, #f0faf0 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0faf0 0%, #f0faf0 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0faf0 0%, #f0faf0 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #f0faf0 0%, #f0faf0 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -moz-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #E6F0E6), color-stop(49%, #E6F0E6), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-end {
|
||||
background-color: #f2f2f2;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #deebde), color-stop(100%, #deebde));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background-color: #E6F0E6;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #E6F0E6), color-stop(100%, #E6F0E6));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-disabled-half-booked {
|
||||
background-color: #f2f2f2;
|
||||
.daterangepicker td.calendar-day-disabled-half-booked, .daterangepicker td.calendar-day-disabled-half {
|
||||
background: #f0bcbc;
|
||||
background: -moz-linear-gradient(-45deg, #f0bcbc 47%, #f2f2f2 50%, #f0bcbc 53%);
|
||||
background: -webkit-linear-gradient(-45deg, #f0bcbc 47%, #f2f2f2 50%, #f0bcbc 53%);
|
||||
background: linear-gradient(-45deg, #f0bcbc 47%, #f2f2f2 50%, #f0bcbc 53%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0bcbc', endColorstr='#f0bcbc', GradientType=1);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
/*
|
||||
background-color: #E6F0E6;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #E6F0E6), color-stop(99%, #E6F0E6));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
border-radius: 0;
|
||||
}
|
||||
*/
|
||||
|
||||
.daterangepicker td.calendar-day-disabled-half-booked.bookable {
|
||||
background-color: #E6F0E6;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #bcd7be), color-stop(100%, #bcd7be));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
|
|
@ -249,27 +256,78 @@
|
|||
border-radius: 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.daterangepicker td.off, .daterangepicker td.off:hover {
|
||||
background: none !important;
|
||||
background-color: #fff !important;
|
||||
color: #fff !important;
|
||||
cursor: not-allowed;
|
||||
.daterangepicker td.calendar-day-reservation-begin.bookable {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #bcd7be), color-stop(49%, #bcd7be), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.disabled, .daterangepicker option.disabled {
|
||||
|
||||
.daterangepicker td.normal, .daterangepicker td.calendar-light, .daterangepicker td.normal:hover, .daterangepicker td.calendar-light:hover {
|
||||
background-color: #E6F0E6 !important;
|
||||
border-radius: 0;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
.daterangepicker td.calendar-day-disabled, .daterangepicker option.calendar-day-disabled {
|
||||
cursor: not-allowed;
|
||||
text-decoration: none;
|
||||
background-color: #f0bcbc !important;
|
||||
border-radius: 0px;
|
||||
|
||||
}
|
||||
.daterangepicker td.bookable {
|
||||
background-color: rgba(88, 155, 92, 0.4)!important;
|
||||
cursor: pointer !important;
|
||||
border-radius: 0;
|
||||
font-weight: bold;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
|
||||
.daterangepicker td.bookable:hover {
|
||||
background-color: rgba(88, 155, 92, 0.50);
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.bookable-end {
|
||||
cursor: pointer !important;
|
||||
}
|
||||
.daterangepicker td.normal.bookable-end, .daterangepicker td.normal.bookable-end:hover {
|
||||
background-color: #d6e6d7;
|
||||
border-radius: 0;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-begin.bookable-end {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #d6e6d7), color-stop(49%, #d6e6d7), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.daterangepicker td.bookable-end:before {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(88, 155, 92, 0.20);
|
||||
|
||||
}
|
||||
.daterangepicker td.active, .daterangepicker td.active:hover {
|
||||
background: none !important;
|
||||
background-color: rgba(88, 155, 92, 1) !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.daterangepicker td.in-range {
|
||||
background-color: rgba(88, 155, 92, 0.70) !important;
|
||||
|
|
@ -277,11 +335,6 @@
|
|||
color: #000;
|
||||
border-radius: 0;
|
||||
}
|
||||
.daterangepicker td.active, .daterangepicker td.active:hover {
|
||||
background: none !important;
|
||||
background-color: rgba(88, 155, 92, 1) !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.daterangepicker td.start-date {
|
||||
border-radius: 4px 0 0 4px;
|
||||
|
|
@ -293,7 +346,6 @@
|
|||
|
||||
|
||||
|
||||
|
||||
.daterangepicker select.monthselect, .daterangepicker select.yearselect {
|
||||
font-size: 12px;
|
||||
padding: 1px;
|
||||
|
|
@ -456,3 +508,6 @@
|
|||
float: right; }
|
||||
.daterangepicker .drp-calendar.left {
|
||||
clear: none !important; } }
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
1
trunk/src/AppBundle/Resources/public/css/fewo-min.css
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
.table>tbody>tr>td.normal{background-color:rgba(88,155,92,0.2);padding:8px}.table>tbody>tr>td.calendar-day-non{background-color:#fff}.table>tbody>tr>td.calendar-day-past{background-color:rgba(242,242,242,0.5)}.table>tbody>tr>td.calendar-light{opacity:0.5}.table>tbody>tr>td.calendar-day-disabled-half{background:#f0bcbc;background:linear-gradient(145deg, #f0bcbc 49%, #f2f2f2 50%, #f0bcbc 51%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#f0bcbc',GradientType=1 )}.table>tbody>tr>td.calendar-day-disabled-half-booked{background:#f0bcbc;background:linear-gradient(145deg, #f0bcbc 49%, #f2f2f2 50%, #C5DCC6 51%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#C5DCC6',GradientType=1 )}.table>tbody>tr>.calendar-day-reservation-begin{background-color:#f0bcbc;background:linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%)}.table>tbody>tr>.calendar-day-reservation-end{background-color:#f2f2f2;background:linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%)}.table>tbody>tr>td.active{background-color:rgba(88,155,92,0.35);padding:0}.table>tbody>tr>td.active:hover{background-color:#648859}.table>tbody>tr>td a{color:#5a5a5a;font-weight:700;width:100%;display:block;height:100%;padding:8px;text-decoration:underline}.table>tbody>tr>td:hover a{color:#fff;font-weight:700;width:100%;display:block;height:100%}.table>tbody>tr>td a.default{color:#648859;font-weight:700;width:100%;display:block;height:100%;padding:8px;text-decoration:none}.table>tbody>tr>td:hover a.default{color:#fff;font-weight:700;width:100%;display:block;height:100%;text-decoration:none;background-color:#648859}
|
||||
102
trunk/src/AppBundle/Resources/public/css/fewo.css
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
|
||||
|
||||
.table > tbody > tr > td.normal {
|
||||
background-color: rgba(88, 155, 92, 0.20);
|
||||
padding: 8px;
|
||||
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-non {
|
||||
background-color: #fff;
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-past {
|
||||
background-color: rgba(242, 242, 242, 0.5);
|
||||
}
|
||||
.table > tbody > tr > td.calendar-light {
|
||||
opacity: 0.5;
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-disabled-half {
|
||||
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0bcbc+49,f2f2f2+50,f0bcbc+51 */
|
||||
background: #f0bcbc; /* Old browsers */
|
||||
background: -moz-linear-gradient(-35deg, #f0bcbc 49%, #f2f2f2 50%, #f0bcbc 51%); /* FF3.6-15 */
|
||||
background: -webkit-linear-gradient(-35deg, #f0bcbc 49%,#f2f2f2 50%,#f0bcbc 51%); /* Chrome10-25,Safari5.1-6 */
|
||||
background: linear-gradient(145deg, #f0bcbc 49%,#f2f2f2 50%,#f0bcbc 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#f0bcbc',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-disabled-half-booked {
|
||||
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0bcbc+49,f2f2f2+50,f0bcbc+51 */
|
||||
background: #f0bcbc; /* Old browsers */
|
||||
background: -moz-linear-gradient(-35deg, #f0bcbc 49%, #f2f2f2 50%, #C5DCC6 51%); /* FF3.6-15 */
|
||||
background: -webkit-linear-gradient(-35deg, #f0bcbc 49%,#f2f2f2 50%,#C5DCC6 51%); /* Chrome10-25,Safari5.1-6 */
|
||||
background: linear-gradient(145deg, #f0bcbc 49%,#f2f2f2 50%,#C5DCC6 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#C5DCC6',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
|
||||
}
|
||||
.table > tbody > tr > .calendar-day-reservation-begin {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #deebde), color-stop(49%, #deebde), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
}
|
||||
.table > tbody > tr > .calendar-day-reservation-end {
|
||||
background-color: #f2f2f2;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #deebde), color-stop(100%, #deebde));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
}
|
||||
|
||||
.table > tbody > tr > td.active {
|
||||
background-color: rgba(88, 155, 92, 0.35);
|
||||
padding: 0;
|
||||
}
|
||||
.table > tbody > tr > td.active:hover {
|
||||
background-color: #648859;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td a {
|
||||
color: #5a5a5a;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
padding: 8px;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td:hover a {
|
||||
color: #fff;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
|
||||
.table > tbody > tr > td a.default {
|
||||
color: #648859;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
padding: 8px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td:hover a.default {
|
||||
color: #fff;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
text-decoration: none;
|
||||
background-color: #648859;
|
||||
|
||||
|
||||
}
|
||||
/* #wrapper, #content, #fullwidth, .container, .row, .content-copy, .tab-content, .tab-pane {
|
||||
position:relative;
|
||||
} */
|
||||
|
|
@ -921,7 +921,7 @@ body.boxed #topBar.dark ul.top-links>li {
|
|||
@media only screen and (max-width: 767px) {
|
||||
|
||||
#sidebar .widget {
|
||||
margin-bottom: 0px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
#topMain.nav-pills>li>a.dropdown-toggle:after {
|
||||
display: block;
|
||||
|
|
|
|||
|
|
@ -10,3 +10,6 @@
|
|||
@import (inline) './cookieconsent.min.css';
|
||||
@import (inline) './custom.css';
|
||||
@import (inline) './header-min.css';
|
||||
@import (inline) './booking.css';
|
||||
//@import (inline) './daterangepicker.css';
|
||||
|
||||
|
|
|
|||
617
trunk/src/AppBundle/Resources/public/css/my-fewo.css
Normal file
|
|
@ -0,0 +1,617 @@
|
|||
.daterangepicker {
|
||||
position: absolute;
|
||||
color: inherit;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
border: 1px solid #ddd;
|
||||
width: 278px;
|
||||
max-width: none;
|
||||
padding: 0;
|
||||
margin-top: 7px;
|
||||
top: 100px;
|
||||
left: 20px;
|
||||
z-index: 3001;
|
||||
display: none;
|
||||
font-family: arial;
|
||||
font-size: 15px;
|
||||
line-height: 1em;
|
||||
}
|
||||
|
||||
.daterangepicker:before, .daterangepicker:after {
|
||||
position: absolute;
|
||||
display: inline-block;
|
||||
border-bottom-color: rgba(0, 0, 0, 0.2);
|
||||
content: '';
|
||||
}
|
||||
|
||||
.daterangepicker:before {
|
||||
top: -7px;
|
||||
border-right: 7px solid transparent;
|
||||
border-left: 7px solid transparent;
|
||||
border-bottom: 7px solid #ccc;
|
||||
}
|
||||
|
||||
.daterangepicker:after {
|
||||
top: -6px;
|
||||
border-right: 6px solid transparent;
|
||||
border-bottom: 6px solid #fff;
|
||||
border-left: 6px solid transparent;
|
||||
}
|
||||
|
||||
.daterangepicker.opensleft:before {
|
||||
right: 9px;
|
||||
}
|
||||
|
||||
.daterangepicker.opensleft:after {
|
||||
right: 10px;
|
||||
}
|
||||
|
||||
.daterangepicker.openscenter:before {
|
||||
left: 0;
|
||||
right: 0;
|
||||
width: 0;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.daterangepicker.openscenter:after {
|
||||
left: 0;
|
||||
right: 0;
|
||||
width: 0;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.daterangepicker.opensright:before {
|
||||
left: 9px;
|
||||
}
|
||||
|
||||
.daterangepicker.opensright:after {
|
||||
left: 10px;
|
||||
}
|
||||
|
||||
.daterangepicker.drop-up {
|
||||
margin-top: -7px;
|
||||
}
|
||||
|
||||
.daterangepicker.drop-up:before {
|
||||
top: initial;
|
||||
bottom: -7px;
|
||||
border-bottom: initial;
|
||||
border-top: 7px solid #ccc;
|
||||
}
|
||||
|
||||
.daterangepicker.drop-up:after {
|
||||
top: initial;
|
||||
bottom: -6px;
|
||||
border-bottom: initial;
|
||||
border-top: 6px solid #fff;
|
||||
}
|
||||
|
||||
.daterangepicker.single .daterangepicker .ranges, .daterangepicker.single .drp-calendar {
|
||||
float: none;
|
||||
}
|
||||
|
||||
.daterangepicker.single .drp-selected {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.daterangepicker.show-calendar .drp-calendar {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.daterangepicker.show-calendar .drp-buttons {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.daterangepicker.auto-apply .drp-buttons {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar {
|
||||
display: none;
|
||||
max-width: 270px;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.left {
|
||||
padding: 8px 0 8px 8px;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.right {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.single .calendar-table {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span {
|
||||
color: #fff;
|
||||
border: solid black;
|
||||
border-width: 0 2px 2px 0;
|
||||
border-radius: 0;
|
||||
display: inline-block;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-table .next span {
|
||||
transform: rotate(-45deg);
|
||||
-webkit-transform: rotate(-45deg);
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-table .prev span {
|
||||
transform: rotate(135deg);
|
||||
-webkit-transform: rotate(135deg);
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-table th, .daterangepicker .calendar-table td {
|
||||
white-space: nowrap;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
min-width: 32px;
|
||||
width: 32px;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
font-size: 14px;
|
||||
border-radius: 4px;
|
||||
border: 0 solid #fff;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-table {
|
||||
border: 1px solid #fff;
|
||||
border-radius: 4px;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-table table {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
.daterangepicker td.available:hover, .daterangepicker th.available:hover {
|
||||
background-color: #eee;
|
||||
border-color: transparent;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.daterangepicker td.week, .daterangepicker th.week {
|
||||
font-size: 80%;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.daterangepicker td.start-date.end-date {
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
|
||||
.daterangepicker th.month {
|
||||
width: auto;
|
||||
}
|
||||
.daterangepicker td.available, .daterangepicker td.available:hover {
|
||||
background-color: #f0faf0;
|
||||
border-radius: 0;
|
||||
cursor: not-allowed;
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-begin {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #E6F0E6), color-stop(49%, #E6F0E6), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #E6F0E6 0%, #E6F0E6 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-end {
|
||||
background-color: #E6F0E6;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #E6F0E6), color-stop(100%, #E6F0E6));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 100%);
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-disabled-half-booked, .daterangepicker td.calendar-day-disabled-half {
|
||||
background: #f0bcbc;
|
||||
background: -moz-linear-gradient(-45deg, #f0bcbc 47%, #f2f2f2 50%, #f0bcbc 53%);
|
||||
background: -webkit-linear-gradient(-45deg, #f0bcbc 47%, #f2f2f2 50%, #f0bcbc 53%);
|
||||
background: linear-gradient(-45deg, #f0bcbc 47%, #f2f2f2 50%, #f0bcbc 53%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0bcbc', endColorstr='#f0bcbc', GradientType=1);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
/*
|
||||
background-color: #E6F0E6;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #E6F0E6), color-stop(99%, #E6F0E6));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #E6F0E6 50%, #E6F0E6 99%);
|
||||
border-radius: 0;
|
||||
}
|
||||
*/
|
||||
|
||||
.daterangepicker td.calendar-day-disabled-half-booked.bookable {
|
||||
background-color: #E6F0E6;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #bcd7be), color-stop(100%, #bcd7be));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #bcd7be 50%, #bcd7be 100%);
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-begin.bookable {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #bcd7be), color-stop(49%, #bcd7be), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #bcd7be 0%, #bcd7be 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.daterangepicker td.normal, .daterangepicker td.calendar-light, .daterangepicker td.normal:hover, .daterangepicker td.calendar-light:hover {
|
||||
background-color: #E6F0E6 !important;
|
||||
border-radius: 0;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
.daterangepicker td.calendar-day-disabled, .daterangepicker option.calendar-day-disabled {
|
||||
cursor: not-allowed;
|
||||
text-decoration: none;
|
||||
background-color: #f0bcbc !important;
|
||||
border-radius: 0px;
|
||||
|
||||
}
|
||||
.daterangepicker td.bookable {
|
||||
background-color: rgba(88, 155, 92, 0.4)!important;
|
||||
cursor: pointer !important;
|
||||
border-radius: 0;
|
||||
font-weight: bold;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
|
||||
.daterangepicker td.bookable:hover {
|
||||
background-color: rgba(88, 155, 92, 0.50);
|
||||
|
||||
}
|
||||
|
||||
.daterangepicker td.bookable-end {
|
||||
cursor: pointer !important;
|
||||
}
|
||||
.daterangepicker td.normal.bookable-end, .daterangepicker td.normal.bookable-end:hover {
|
||||
background-color: #d6e6d7;
|
||||
border-radius: 0;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.daterangepicker td.calendar-day-reservation-begin.bookable-end {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #d6e6d7), color-stop(49%, #d6e6d7), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #d6e6d7 0%, #d6e6d7 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
border-radius: 0;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.daterangepicker td.bookable-end:before {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(88, 155, 92, 0.20);
|
||||
|
||||
}
|
||||
.daterangepicker td.active, .daterangepicker td.active:hover {
|
||||
background: none !important;
|
||||
background-color: rgba(88, 155, 92, 1) !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.daterangepicker td.in-range {
|
||||
background-color: rgba(88, 155, 92, 0.70) !important;
|
||||
border-color: transparent;
|
||||
color: #000;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.daterangepicker td.start-date {
|
||||
border-radius: 4px 0 0 4px;
|
||||
}
|
||||
|
||||
.daterangepicker td.end-date {
|
||||
border-radius: 0 4px 4px 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.daterangepicker select.monthselect, .daterangepicker select.yearselect {
|
||||
font-size: 12px;
|
||||
padding: 1px;
|
||||
height: auto;
|
||||
margin: 0;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.daterangepicker select.monthselect {
|
||||
margin-right: 2%;
|
||||
width: 56%;
|
||||
}
|
||||
|
||||
.daterangepicker select.yearselect {
|
||||
width: 40%;
|
||||
}
|
||||
|
||||
.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
|
||||
width: 50px;
|
||||
margin: 0 auto;
|
||||
background: #eee;
|
||||
border: 1px solid #eee;
|
||||
padding: 2px;
|
||||
outline: 0;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-time {
|
||||
text-align: center;
|
||||
margin: 4px auto 0 auto;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.daterangepicker .calendar-time select.disabled {
|
||||
color: #ccc;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-buttons {
|
||||
clear: both;
|
||||
text-align: right;
|
||||
padding: 8px;
|
||||
border-top: 1px solid #ddd;
|
||||
display: none;
|
||||
line-height: 12px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-selected {
|
||||
display: inline-block;
|
||||
font-size: 12px;
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-buttons .btn {
|
||||
margin-left: 8px;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
padding: 4px 8px;
|
||||
}
|
||||
|
||||
.daterangepicker.show-ranges .drp-calendar.left {
|
||||
border-left: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges {
|
||||
float: none;
|
||||
text-align: left;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.daterangepicker.show-calendar .ranges {
|
||||
margin-top: 8px;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges ul {
|
||||
list-style: none;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges li {
|
||||
font-size: 12px;
|
||||
padding: 8px 12px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges li:hover {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges li.active {
|
||||
background-color: #648859;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/* Larger Screen Styling */
|
||||
@media (min-width: 564px) {
|
||||
.daterangepicker {
|
||||
width: auto; }
|
||||
.daterangepicker .ranges ul {
|
||||
width: 140px; }
|
||||
.daterangepicker.single .ranges ul {
|
||||
width: 100%; }
|
||||
.daterangepicker.single .drp-calendar.left {
|
||||
clear: none; }
|
||||
.daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .drp-calendar {
|
||||
float: left; }
|
||||
.daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .drp-calendar {
|
||||
float: right; }
|
||||
.daterangepicker.ltr {
|
||||
direction: ltr;
|
||||
text-align: left; }
|
||||
.daterangepicker.ltr .drp-calendar.left {
|
||||
clear: left;
|
||||
margin-right: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.left .calendar-table {
|
||||
border-right: none;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.right {
|
||||
margin-left: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.right .calendar-table {
|
||||
border-left: none;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.left .calendar-table {
|
||||
padding-right: 8px; }
|
||||
.daterangepicker.ltr .ranges, .daterangepicker.ltr .drp-calendar {
|
||||
float: left; }
|
||||
.daterangepicker.rtl {
|
||||
direction: rtl;
|
||||
text-align: right; }
|
||||
.daterangepicker.rtl .drp-calendar.left {
|
||||
clear: right;
|
||||
margin-left: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.left .calendar-table {
|
||||
border-left: none;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.right {
|
||||
margin-right: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.right .calendar-table {
|
||||
border-right: none;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.left .calendar-table {
|
||||
padding-left: 12px; }
|
||||
.daterangepicker.rtl .ranges, .daterangepicker.rtl .drp-calendar {
|
||||
text-align: right;
|
||||
float: right; } }
|
||||
@media (min-width: 730px) {
|
||||
.daterangepicker .ranges {
|
||||
width: auto; }
|
||||
.daterangepicker.ltr .ranges {
|
||||
float: left; }
|
||||
.daterangepicker.rtl .ranges {
|
||||
float: right; }
|
||||
.daterangepicker .drp-calendar.left {
|
||||
clear: none !important; } }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.table > tbody > tr > td.normal {
|
||||
background-color: rgba(88, 155, 92, 0.20);
|
||||
padding: 8px;
|
||||
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-non {
|
||||
background-color: #fff;
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-past {
|
||||
background-color: rgba(242, 242, 242, 0.5);
|
||||
}
|
||||
.table > tbody > tr > td.calendar-light {
|
||||
opacity: 0.5;
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-disabled-half {
|
||||
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0bcbc+49,f2f2f2+50,f0bcbc+51 */
|
||||
background: #f0bcbc; /* Old browsers */
|
||||
background: -moz-linear-gradient(-35deg, #f0bcbc 49%, #f2f2f2 50%, #f0bcbc 51%); /* FF3.6-15 */
|
||||
background: -webkit-linear-gradient(-35deg, #f0bcbc 49%,#f2f2f2 50%,#f0bcbc 51%); /* Chrome10-25,Safari5.1-6 */
|
||||
background: linear-gradient(145deg, #f0bcbc 49%,#f2f2f2 50%,#f0bcbc 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#f0bcbc',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
|
||||
}
|
||||
.table > tbody > tr > td.calendar-day-disabled-half-booked {
|
||||
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0bcbc+49,f2f2f2+50,f0bcbc+51 */
|
||||
background: #f0bcbc; /* Old browsers */
|
||||
background: -moz-linear-gradient(-35deg, #f0bcbc 49%, #f2f2f2 50%, #C5DCC6 51%); /* FF3.6-15 */
|
||||
background: -webkit-linear-gradient(-35deg, #f0bcbc 49%,#f2f2f2 50%,#C5DCC6 51%); /* Chrome10-25,Safari5.1-6 */
|
||||
background: linear-gradient(145deg, #f0bcbc 49%,#f2f2f2 50%,#C5DCC6 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0bcbc', endColorstr='#C5DCC6',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
|
||||
}
|
||||
.table > tbody > tr > .calendar-day-reservation-begin {
|
||||
background-color: #f0bcbc;
|
||||
background: -moz-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #deebde), color-stop(49%, #deebde), color-stop(50%, #f0bcbc), color-stop(100%, #f0bcbc));
|
||||
background: -webkit-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -o-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
background: linear-gradient(to bottom right, #deebde 0%, #deebde 49%, #f0bcbc 50%, #f0bcbc 100%);
|
||||
}
|
||||
.table > tbody > tr > .calendar-day-reservation-end {
|
||||
background-color: #f2f2f2;
|
||||
background: -moz-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #f0bcbc), color-stop(49%, #f0bcbc), color-stop(50%, #deebde), color-stop(100%, #deebde));
|
||||
background: -webkit-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -o-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: -ms-linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
background: linear-gradient(to bottom right, #f0bcbc 0%, #f0bcbc 49%, #deebde 50%, #deebde 100%);
|
||||
}
|
||||
|
||||
.table > tbody > tr > td.active {
|
||||
background-color: rgba(88, 155, 92, 0.35);
|
||||
padding: 0;
|
||||
}
|
||||
.table > tbody > tr > td.active:hover {
|
||||
background-color: #648859;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td a {
|
||||
color: #5a5a5a;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
padding: 8px;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td:hover a {
|
||||
color: #fff;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
|
||||
.table > tbody > tr > td a.default {
|
||||
color: #648859;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
padding: 8px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.table > tbody > tr > td:hover a.default {
|
||||
color: #fff;
|
||||
font-weight: 700;
|
||||
width: 100%;
|
||||
display: block;
|
||||
height: 100%;
|
||||
text-decoration: none;
|
||||
background-color: #648859;
|
||||
|
||||
|
||||
}
|
||||
/* #wrapper, #content, #fullwidth, .container, .row, .content-copy, .tab-content, .tab-pane {
|
||||
position:relative;
|
||||
} */
|
||||
/*# sourceMappingURL=my-fewo.css.map */
|
||||
1
trunk/src/AppBundle/Resources/public/css/my-fewo.css.map
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["daterangepicker.css","fewo.css"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"my-fewo.css"}
|
||||
4
trunk/src/AppBundle/Resources/public/css/my-fewo.less
Executable file
|
|
@ -0,0 +1,4 @@
|
|||
@import (inline) './daterangepicker.css';
|
||||
@import (inline) './fewo.css';
|
||||
|
||||
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
$(document).ready(function() {
|
||||
$(document).ready(function () {
|
||||
|
||||
|
||||
var frm$ = $('.st-booking-form');
|
||||
var summary$ = $('.st-booking-summary');
|
||||
|
|
@ -18,27 +19,86 @@ $(document).ready(function() {
|
|||
extraBookingDaysBefore
|
||||
extraBookingDaysAfter
|
||||
*/
|
||||
function setExtraBookingDaysProgram($this, $to) {
|
||||
|
||||
if ($to === 'before') {
|
||||
var show$ = $('#extraDaysProgramBefore_show');
|
||||
var hide$ = $('#extraDaysProgramBefore_hide');
|
||||
var date$ = $('#extraDaysProgramBefore_date');
|
||||
}
|
||||
if ($to === 'after') {
|
||||
var show$ = $('#extraDaysProgramAfter_show');
|
||||
var hide$ = $('#extraDaysProgramAfter_hide');
|
||||
var date$ = $('#extraDaysProgramAfter_date');
|
||||
}
|
||||
|
||||
if($($this).val() === 0){
|
||||
show$.hide();
|
||||
hide$.show();
|
||||
}
|
||||
if($($this).val() > 0){
|
||||
show$.show();
|
||||
hide$.hide();
|
||||
}
|
||||
|
||||
function parseDate(input) {
|
||||
var parts = input.match(/(\d+)/g);
|
||||
// note parts[1]-1
|
||||
return new Date(parts[2], parts[1]-1, parts[0]);
|
||||
}
|
||||
|
||||
|
||||
if(date$.data('org-date')) {
|
||||
// console.log(date$.data('org-date'));
|
||||
|
||||
var date = parseDate(date$.data('org-date'));
|
||||
//console.log(date);
|
||||
if ($to === 'before') {
|
||||
//console.log($($this).val());
|
||||
date.setDate(date.getDate() - parseInt($($this).val()));
|
||||
}
|
||||
if ($to === 'after') {
|
||||
// console.log($($this).val());
|
||||
date.setDate(date.getDate() + parseInt($($this).val()));
|
||||
}
|
||||
//console.log(date);
|
||||
date$.html(date.getDate() + '.' + (date.getMonth() + 1) + '.' + date.getFullYear());
|
||||
}
|
||||
}
|
||||
|
||||
if(extraBookingDaysBefore$){
|
||||
extraBookingDaysBefore$.on('change', function () {
|
||||
setExtraBookingDaysProgram(this, 'before');
|
||||
});
|
||||
setExtraBookingDaysProgram(this, 'before');
|
||||
}
|
||||
|
||||
if(extraBookingDaysAfter$){
|
||||
extraBookingDaysAfter$.on('change', function () {
|
||||
setExtraBookingDaysProgram(this, 'after');
|
||||
|
||||
});
|
||||
setExtraBookingDaysProgram(this, 'after');
|
||||
}
|
||||
|
||||
//var travelersIndices = $('.st-traveller-index');
|
||||
|
||||
var travelers$ = $('.st-traveler');
|
||||
var travelerFields$ = travelers$.find('input,select,checkbox');
|
||||
|
||||
frm$.find('input, select').change(function() {
|
||||
frm$.find('input, select').change(function () {
|
||||
var tmp = location.href.split('?');
|
||||
var tmp2 = tmp[0].split('/');
|
||||
tmp2.pop();
|
||||
var url = tmp2.join('/') + '/berechne-gesamtpreis';
|
||||
if (tmp[1])
|
||||
{
|
||||
url += '?'+ tmp[1];
|
||||
if (tmp[1]) {
|
||||
url += '?' + tmp[1];
|
||||
}
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'post',
|
||||
data: frm$.serialize()
|
||||
|
||||
}).then(function(r) {
|
||||
}).then(function (r) {
|
||||
summary$.html(r);
|
||||
/*
|
||||
$('#st-booking-price-set-table .st-total-price-set').html($(r).find('.st-total-price').text());
|
||||
|
|
@ -46,7 +106,7 @@ $(document).ready(function() {
|
|||
$('#st-booking-price-set-table .st-final-price-set').html($(r).find('.st-final-price').text());
|
||||
*/
|
||||
|
||||
}, function() {
|
||||
}, function () {
|
||||
summary$.html('Aufgrund eines Fehlers konnte kein Angebot ermittelt werden.');
|
||||
})
|
||||
});
|
||||
|
|
@ -57,65 +117,65 @@ $(document).ready(function() {
|
|||
$('#no_flight_time').hide();
|
||||
$('#yes_flight_time').hide();
|
||||
|
||||
console.log($(this).val());
|
||||
if(!$(this).val() || $(this).find("option:selected").text().indexOf("Eigenanreise") == 0){
|
||||
if (!$(this).val() || $(this).find("option:selected").text().indexOf("Eigenanreise") == 0) {
|
||||
return;
|
||||
}
|
||||
console.log($('#flight_time_'+$(this).val()).length);
|
||||
if($('#flight_time_'+$(this).val()).length){
|
||||
$('#flight_time_'+$(this).val()).show();
|
||||
}if ($('#flight_time_' + $(this).val()).length) {
|
||||
$('#flight_time_' + $(this).val()).show();
|
||||
$('#yes_flight_time').show();
|
||||
}else{
|
||||
} else {
|
||||
$('#no_flight_time').show();
|
||||
}
|
||||
});
|
||||
var toggle_first= [];
|
||||
var toggle_first = [];
|
||||
|
||||
function updateNationality(ele){
|
||||
function updateNationality(ele) {
|
||||
var obj = ele.parents('.nationality_select').data('toggle');
|
||||
if(ele.val()){
|
||||
var values = $("input[name='travel_program_countries_id[]']").map(function(){return $(this).val();}).get();
|
||||
if (ele.val()) {
|
||||
var values = $("input[name='travel_program_countries_id[]']").map(function () {
|
||||
return $(this).val();
|
||||
}).get();
|
||||
console.log(values);
|
||||
|
||||
var tmp = location.href.split('?');
|
||||
var tmp2 = tmp[0].split('/');
|
||||
tmp2.pop();
|
||||
var url = tmp2.join('/') + '/show_nationality_country_text';
|
||||
if (tmp[1])
|
||||
{
|
||||
url += '?'+ tmp[1];
|
||||
if (tmp[1]) {
|
||||
url += '?' + tmp[1];
|
||||
}
|
||||
|
||||
var data = {nationality_id : ele.val(), country_ids: values};
|
||||
var data = {nationality_id: ele.val(), country_ids: values};
|
||||
|
||||
$.ajax({
|
||||
url:url,
|
||||
url: url,
|
||||
type: "POST",
|
||||
data: data,
|
||||
}).then(function(r) {
|
||||
}).then(function (r) {
|
||||
$(obj).find('.set_nationality_country_text').html(r);
|
||||
$(obj).show('slow');
|
||||
if(!toggle_first[ele.val()]){
|
||||
if (!toggle_first[ele.val()]) {
|
||||
$(obj).find('.accordion-toggle').click();
|
||||
toggle_first[ele.val()] = true;
|
||||
}
|
||||
}, function() {
|
||||
}, function () {
|
||||
summary$.html('Aufgrund eines Fehlers konnte keine Anfrage übermittel werden.');
|
||||
});
|
||||
}else{
|
||||
} else {
|
||||
$(obj).hide();
|
||||
}
|
||||
}
|
||||
|
||||
$('.nationality_select').find('select').change(function(){
|
||||
$('.nationality_select').find('select').change(function () {
|
||||
updateNationality($(this));
|
||||
});
|
||||
|
||||
|
||||
function updateAllNationality(){
|
||||
$('.nationality_select').find('select').each(function(){
|
||||
function updateAllNationality() {
|
||||
$('.nationality_select').find('select').each(function () {
|
||||
updateNationality($(this));
|
||||
});
|
||||
}
|
||||
|
||||
updateAllNationality();
|
||||
|
||||
|
||||
|
|
@ -139,10 +199,10 @@ $(document).ready(function() {
|
|||
|
||||
$i.toggleClass('icon-minus icon-plus');
|
||||
|
||||
if($i.hasClass('icon-minus')){
|
||||
if ($i.hasClass('icon-minus')) {
|
||||
$i.parent('h5').find('span').html('Leistungen ausblenden');
|
||||
}
|
||||
if($i.hasClass('icon-plus')){
|
||||
if ($i.hasClass('icon-plus')) {
|
||||
$i.parent('h5').find('span').html('Leistungen einblenden');
|
||||
}
|
||||
}
|
||||
|
|
@ -151,9 +211,7 @@ $(document).ready(function() {
|
|||
$('.booking_insurance_toogle').on('shown.bs.collapse', toggleChevronIn);
|
||||
|
||||
|
||||
|
||||
function updateTravelers()
|
||||
{
|
||||
function updateTravelers() {
|
||||
var travelersIndex = 1;
|
||||
|
||||
var singleTravelerCount = parseInt(roomCountSR$.val());
|
||||
|
|
@ -173,139 +231,127 @@ $(document).ready(function() {
|
|||
var $offset = 1;
|
||||
|
||||
//single
|
||||
if(singleTravelerCount > 0)
|
||||
{
|
||||
for(var i = $offset; i <= singleTravelerCount; i++)
|
||||
{
|
||||
if (singleTravelerCount > 0) {
|
||||
for (var i = $offset; i <= singleTravelerCount; i++) {
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer 1. Erwachsender");
|
||||
counter ++;
|
||||
counter++;
|
||||
}
|
||||
}
|
||||
//single + child
|
||||
$offset = $offset + parseInt(roomCountSR$.find('option').length) -1;
|
||||
$offset = $offset + parseInt(roomCountSR$.find('option').length) - 1;
|
||||
//4 next 5
|
||||
|
||||
if(singleTravelerChildCount > 0)
|
||||
{
|
||||
for(var i = $offset; i < singleTravelerChildCount + $offset; i++)
|
||||
{
|
||||
if (singleTravelerChildCount > 0) {
|
||||
for (var i = $offset; i < singleTravelerChildCount + $offset; i++) {
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer | 1. Erwachsender");
|
||||
counter ++;
|
||||
counter++;
|
||||
|
||||
//child
|
||||
i++;
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer | Kind");
|
||||
counter ++;
|
||||
counter++;
|
||||
}
|
||||
}
|
||||
//double
|
||||
$offset = $offset + (parseInt(roomChildCountSR$.find('option').length) -1) * 2;
|
||||
$offset = $offset + (parseInt(roomChildCountSR$.find('option').length) - 1) * 2;
|
||||
//4 + 4*2 next 13
|
||||
if(doubleTravelerCount > 0)
|
||||
{
|
||||
if (doubleTravelerCount > 0) {
|
||||
$m = 1;
|
||||
|
||||
for(var i = $offset; i < doubleTravelerCount + $offset; i++)
|
||||
{
|
||||
var travelerSelector = '.st-traveler-'+i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
for (var i = $offset; i < doubleTravelerCount + $offset; i++) {
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
// var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer | " + $m + ". Erwachsender");
|
||||
counter ++;
|
||||
counter++;
|
||||
$m++;
|
||||
if($m == 3){
|
||||
if ($m == 3) {
|
||||
$m = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
//double + child
|
||||
$offset = $offset + (parseInt(roomCountDR$.find('option').length) -1) * 2;
|
||||
$offset = $offset + (parseInt(roomCountDR$.find('option').length) - 1) * 2;
|
||||
//12 + 3*2 next 19
|
||||
if(doubleTravelerChildCount > 0)
|
||||
{
|
||||
if (doubleTravelerChildCount > 0) {
|
||||
$m = 1;
|
||||
for(var i = $offset; i < doubleTravelerChildCount + $offset; i++)
|
||||
{
|
||||
var travelerSelector = '.st-traveler-'+i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
for (var i = $offset; i < doubleTravelerChildCount + $offset; i++) {
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer | " + $m + ". Erwachsender");
|
||||
counter ++;
|
||||
counter++;
|
||||
$m++;
|
||||
if($m == 3){
|
||||
if ($m == 3) {
|
||||
$m = 1;
|
||||
//child
|
||||
i++;
|
||||
var travelerSelector = '.st-traveler-'+i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer | Kind");
|
||||
counter ++;
|
||||
counter++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//triple
|
||||
$offset = $offset + (parseInt(roomChildCountDR$.find('option').length) -1) * 3;
|
||||
$offset = $offset + (parseInt(roomChildCountDR$.find('option').length) - 1) * 3;
|
||||
//18 + 3*3 next 28
|
||||
if(tripleTravelerCount > 0)
|
||||
{
|
||||
if (tripleTravelerCount > 0) {
|
||||
$m = 1;
|
||||
for(var i = $offset; i < tripleTravelerCount + $offset; i++)
|
||||
{
|
||||
var travelerSelector = '.st-traveler-'+i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
for (var i = $offset; i < tripleTravelerCount + $offset; i++) {
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer | " + $m + ". Erwachsender");
|
||||
counter ++;
|
||||
counter++;
|
||||
$m++;
|
||||
if($m == 4){
|
||||
if ($m == 4) {
|
||||
$m = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//triple + child
|
||||
$offset = $offset + (parseInt(roomCountTR$.find('option').length) -1) * 3;
|
||||
$offset = $offset + (parseInt(roomCountTR$.find('option').length) - 1) * 3;
|
||||
//27 + 2*3 next 34
|
||||
if(tripleTravelerChildCount > 0)
|
||||
{
|
||||
if (tripleTravelerChildCount > 0) {
|
||||
$m = 1;
|
||||
for(var i = $offset; i < tripleTravelerChildCount + $offset; i++)
|
||||
{
|
||||
var travelerSelector = '.st-traveler-'+i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
for (var i = $offset; i < tripleTravelerChildCount + $offset; i++) {
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer | " + $m + ". Erwachsender");
|
||||
counter ++;
|
||||
counter++;
|
||||
$m++;
|
||||
if($m == 4){
|
||||
if ($m == 4) {
|
||||
$m = 1;
|
||||
//child
|
||||
i++;
|
||||
var travelerSelector = '.st-traveler-'+i;
|
||||
var roomIndexSelector = travelerSelector+' .st-traveller-index';
|
||||
var travelerSelector = '.st-traveler-' + i;
|
||||
var roomIndexSelector = travelerSelector + ' .st-traveller-index';
|
||||
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
|
||||
$(travelerSelector).show().find('input,select').prop('required', true);
|
||||
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer | Kind");
|
||||
counter ++;
|
||||
counter++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,54 @@
|
|||
window.currentScroll = 0;
|
||||
|
||||
|
||||
|
||||
var collapse_on_responsive = function() {
|
||||
if (jQuery(document).width() < 992) {
|
||||
jQuery('.widget').find('.collapse-widget:not(.open)').addClass('collapsed');
|
||||
jQuery('.widget').find('.collapse:not(.open)').removeClass('in');
|
||||
}else{
|
||||
jQuery('.widget').find('.collapse-widget:not(.open)').removeClass('collapsed');
|
||||
jQuery('.widget').find('.collapse:not(.open)').addClass('in');
|
||||
}
|
||||
};
|
||||
|
||||
collapse_on_responsive();
|
||||
|
||||
$(window).on('resize',function(e){
|
||||
collapse_on_responsive();
|
||||
});
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
function scrollToTabContent(tabSelector){
|
||||
$("html, body").animate({
|
||||
scrollTop: $(tabSelector).offset().top - 220
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
function activateTravelDatesTab(){
|
||||
$('[href=\'#travel-dates-content-tab\']').first().on('shown.bs.tab', function () {
|
||||
scrollToTabContent('#travel-dates-content-tab');
|
||||
});
|
||||
$('[href=\'#travel-dates-content-tab\']').first().tab('show');
|
||||
}
|
||||
$('.nav-tabs > li > a').click(function(){
|
||||
if($(this).data('toggle') === 'tab'){
|
||||
return
|
||||
}
|
||||
scrollToTabContent($(this).attr('href'));
|
||||
});
|
||||
|
||||
$('#st-slider-booking-events-scroll').click(function (event) {
|
||||
event.preventDefault();
|
||||
activateTravelDatesTab();
|
||||
});
|
||||
|
||||
if (location.hash === '#travel-dates-content-tab'){
|
||||
activateTravelDatesTab();
|
||||
}
|
||||
});
|
||||
|
||||
window.currentScroll = 0;
|
||||
jQuery('body').removeClass('no-js');
|
||||
|
||||
|
||||
|
|
@ -117,12 +166,8 @@ jQuery("#topMain a.dropdown-toggle").bind("click", function(e) {
|
|||
return true;
|
||||
|
||||
});
|
||||
jQuery(document).ready(function($) {
|
||||
if (jQuery(document).width() < 768) {
|
||||
jQuery('.widget').find('.collapse-widget').addClass('collapsed');
|
||||
jQuery('.widget').find('.collapse').removeClass('in');
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
jQuery(document).ready(function($) {
|
||||
"use strict";
|
||||
|
|
@ -145,64 +190,7 @@ jQuery(document).ready(function($) {
|
|||
}
|
||||
})});
|
||||
|
||||
/* ==============================================
|
||||
VIDEOS -->
|
||||
=============================================== */
|
||||
|
||||
/* var videos$ = $('a[id^="video_"]');
|
||||
|
||||
function videoInitHandler()
|
||||
{
|
||||
var el$ = $(this);
|
||||
|
||||
var text = el$.text();
|
||||
var length = text.length - 11;
|
||||
var caption = text.substring(0, length);
|
||||
var expl = this.id.substring(6, this.id.length);
|
||||
|
||||
$('<iframe />')
|
||||
.attr({
|
||||
width: '100%',
|
||||
height: 500,
|
||||
src: 'https://www.youtube-nocookie.com/embed/'+ expl,
|
||||
frameborder: 0,
|
||||
allowfullscreen: true,
|
||||
'data-st-video': this.id
|
||||
})
|
||||
.hide()
|
||||
.insertAfter(this)
|
||||
;
|
||||
el$
|
||||
.addClass('st-collapsed')
|
||||
//.css('background-image', 'url(/images/st2/icons/arrowup.gif)')
|
||||
.text(caption + ' einblenden')
|
||||
.attr('href', 'javascript:void(0);')
|
||||
;
|
||||
}
|
||||
|
||||
videos$.each(videoInitHandler);
|
||||
|
||||
videos$.click(function() {
|
||||
|
||||
var el$ = $(this);
|
||||
var video$ = $('[data-st-video='+ this.id +']');
|
||||
var text = el$.text();
|
||||
var length = text.length - 11;
|
||||
var caption = text.substring(0, length);
|
||||
|
||||
if (el$.hasClass('st-collapsed'))
|
||||
{
|
||||
video$.slideDown('slow');
|
||||
el$.text(caption + ' ausblenden');
|
||||
el$.removeClass('st-collapsed');
|
||||
}
|
||||
else
|
||||
{
|
||||
video$.slideUp(400);
|
||||
el$.text(caption + ' einblenden');
|
||||
el$.addClass('st-collapsed');
|
||||
}
|
||||
});*/
|
||||
|
||||
|
||||
/* ==============================================
|
||||
|
|
@ -299,6 +287,8 @@ jQuery(document).ready(function($) {
|
|||
/* ==============================================
|
||||
nav-tabs -->
|
||||
=============================================== */
|
||||
|
||||
/*
|
||||
var scrollBarWidths = 40;
|
||||
var windowW = $(window).width();
|
||||
|
||||
|
|
@ -392,6 +382,8 @@ jQuery(document).ready(function($) {
|
|||
|
||||
});
|
||||
|
||||
*/
|
||||
|
||||
/* ==============================================
|
||||
MENU HOVER -->
|
||||
=============================================== */
|
||||
|
|
@ -443,12 +435,11 @@ jQuery(document).ready(function($) {
|
|||
$('.tab-pane').removeClass('active');
|
||||
$('.tab-pane'+href).addClass('active');
|
||||
|
||||
if($(this).parents('.nav-tabs-bottom').length){
|
||||
if($('#position-scroll-tab').length){
|
||||
$('html, body').animate({
|
||||
scrollTop: ($(".content-copy").offset().top + 200)
|
||||
scrollTop: ($("#position-scroll-tab").offset().top - 220)
|
||||
}, 500);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
/* ==============================================
|
||||
|
|
@ -466,7 +457,6 @@ jQuery(document).ready(function($) {
|
|||
=============================================== */
|
||||
|
||||
function toggleChevron(e) {
|
||||
console.log(e.target);
|
||||
var $i = $(e.target)
|
||||
.parent('.panel-group')
|
||||
.find("i.indicator");
|
||||
|
|
@ -484,7 +474,6 @@ jQuery(document).ready(function($) {
|
|||
$('#accordion').on('shown.bs.collapse', toggleChevron);
|
||||
|
||||
function toggleChevron2(e) {
|
||||
console.log(e.target);
|
||||
var $i = $(e.target)
|
||||
.parent('.panel-group')
|
||||
.find("i.indicator");
|
||||
|
|
@ -502,7 +491,6 @@ jQuery(document).ready(function($) {
|
|||
$('#accordion_pd').on('shown.bs.collapse', toggleChevron2);
|
||||
|
||||
function toggleChevron3(e) {
|
||||
console.log(e.target);
|
||||
var $i = $(e.target)
|
||||
.parent('.panel-group')
|
||||
.find("i.indicator");
|
||||
|
|
@ -664,3 +652,121 @@ jQuery(document).ready(function($) {
|
|||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
$("a.scroll-to-jump").click(function(e)
|
||||
{
|
||||
$(window).t
|
||||
rigger('resize');
|
||||
e.preventDefault();
|
||||
var aid = $(this).attr('href');
|
||||
aid = aid.replace("#", "");
|
||||
aTag = $("[id='"+ aid +"']");
|
||||
if(aTag !== null && aTag.offset() !== null){
|
||||
$("html, body").animate({
|
||||
scrollTop: aTag.offset().top - 220
|
||||
}, 1000);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
function initGoTo() {
|
||||
|
||||
//Variables
|
||||
if(!$('.js-go-to').length){
|
||||
return;
|
||||
}
|
||||
var $this = $('.js-go-to'),
|
||||
$target = $this.data('target'),
|
||||
showEffect = $this.data('show-effect'),
|
||||
position = $this.data('position'),
|
||||
type = $this.data('type'),
|
||||
hideEffect = $this.data('hide-effect'),
|
||||
offsetTop = $this.data('offset-top'),
|
||||
targetOffsetTop = function () {
|
||||
return $target ? $($target).offset().top : 0;
|
||||
};
|
||||
|
||||
if (type == 'static') {
|
||||
$this.css({
|
||||
'display': 'inline-block'
|
||||
});
|
||||
} else {
|
||||
$this.addClass('animated').css({
|
||||
'display': 'inline-block',
|
||||
'position': type,
|
||||
'opacity': 0
|
||||
});
|
||||
}
|
||||
|
||||
if (type == 'fixed' || type == 'absolute') {
|
||||
$this.css(position);
|
||||
}
|
||||
|
||||
$this.on('click', function (e) {
|
||||
e.preventDefault();
|
||||
$('html, body').stop().animate({
|
||||
'scrollTop': targetOffsetTop()
|
||||
}, 800);
|
||||
});
|
||||
|
||||
if (!$this.data('offset-top') && !$this.hasClass('js-animation-was-fired') && type != 'static') {
|
||||
if ($this.offset().top <= $(window).height()) {
|
||||
$this.show();
|
||||
|
||||
setTimeout(function () {
|
||||
$this.addClass('js-animation-was-fired ' + showEffect).css({
|
||||
'opacity': ''
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (type != 'static') {
|
||||
$(window).on('scroll', function () {
|
||||
if ($this.data('offset-top')) {
|
||||
if ($(window).scrollTop() >= offsetTop && !$this.hasClass('js-animation-was-fired')) {
|
||||
$this.show();
|
||||
|
||||
setTimeout(function () {
|
||||
$this.addClass('js-animation-was-fired ' + showEffect).css({
|
||||
'opacity': ''
|
||||
});
|
||||
});
|
||||
} else if ($(window).scrollTop() <= offsetTop && $this.hasClass('js-animation-was-fired')) {
|
||||
$this.removeClass('js-animation-was-fired ' + showEffect);
|
||||
|
||||
setTimeout(function () {
|
||||
$this.addClass(hideEffect).css({
|
||||
'opacity': 0
|
||||
});
|
||||
}, 100);
|
||||
|
||||
setTimeout(function () {
|
||||
$this.removeClass(hideEffect).hide();
|
||||
}, 400);
|
||||
}
|
||||
} else {
|
||||
var thisOffsetTop = $this.offset().top;
|
||||
|
||||
if (!$this.hasClass('js-animation-was-fired')) {
|
||||
if ($(window).scrollTop() >= thisOffsetTop - $(window).height()) {
|
||||
$this.show();
|
||||
|
||||
setTimeout(function () {
|
||||
$this.addClass('js-animation-was-fired ' + showEffect).css({
|
||||
'opacity': ''
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$(window).trigger('scroll');
|
||||
}
|
||||
}
|
||||
|
||||
initGoTo();
|
||||
11
trunk/src/AppBundle/Resources/public/js/fewoBooking-min.js
vendored
Normal file
|
|
@ -7,7 +7,8 @@ $(document).ready(function() {
|
|||
var toDateMonth$ = $('#fewo_booking_request_toDate_month');
|
||||
var toDateYear$ = $('#fewo_booking_request_toDate_year');
|
||||
|
||||
frm$.find('input, select').change(function() {
|
||||
|
||||
function loadCalculationFewo(){
|
||||
var tmp = location.href.split('?');
|
||||
var tmp2 = tmp[0].split('/');
|
||||
tmp2.pop();
|
||||
|
|
@ -16,7 +17,6 @@ $(document).ready(function() {
|
|||
{
|
||||
url += '?'+ tmp[1];
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'post',
|
||||
|
|
@ -27,6 +27,117 @@ $(document).ready(function() {
|
|||
|
||||
}, function() {
|
||||
summary$.html('Aufgrund eines Fehlers konnte kein Angebot ermittelt werden.');
|
||||
})
|
||||
});
|
||||
}
|
||||
frm$.find('input, select').change(function() {
|
||||
loadCalculationFewo();
|
||||
});
|
||||
|
||||
// var currentDate = moment().format("DD.MM.YYYY");
|
||||
|
||||
var startDate = $('#fewo_booking_request_fromDate').val();
|
||||
var endDate = $('#fewo_booking_request_toDate').val();
|
||||
|
||||
var maxDate = $('#hidden_toDate').val();
|
||||
|
||||
var reservationDays = JSON.parse($('#hidden_reservationDays').val());
|
||||
var customDays = JSON.parse($('#hidden_customDays').val());
|
||||
var checkDates = function (date) {
|
||||
var formatted = date.format('DD.MM.YYYY');
|
||||
if(reservationDays.indexOf(formatted) > -1){
|
||||
return true;
|
||||
}
|
||||
if(customDays[formatted] !== undefined && customDays[formatted].indexOf('bookable') == -1 && customDays[formatted].indexOf('bookable-end') == -1){
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
var checkCustom = function (date) {
|
||||
if (date !== false) {
|
||||
var formatted = date.format('DD.MM.YYYY');
|
||||
if(customDays[formatted] !== undefined){
|
||||
return customDays[formatted];
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
$('#fewo_booking_request_fromDate, #fewo_booking_request_toDate').daterangepicker({
|
||||
isInvalidDate: checkDates,
|
||||
isCustomDate: checkCustom,
|
||||
"minDate": moment(),
|
||||
"maxDate": maxDate,
|
||||
"timePickerSeconds": true,
|
||||
|
||||
"locale": {
|
||||
"format": "DD.MM.YYYY",
|
||||
"separator": " - ",
|
||||
"applyLabel": "OK",
|
||||
"cancelLabel": "X",
|
||||
"fromLabel": "Von",
|
||||
"toLabel": "Bis",
|
||||
"customRangeLabel": "Custom",
|
||||
"weekLabel": "W",
|
||||
"daysOfWeek": [
|
||||
"So",
|
||||
"Mo",
|
||||
"Di",
|
||||
"Mi",
|
||||
"Do",
|
||||
"Fr",
|
||||
"Sa"
|
||||
],
|
||||
"monthNames": [
|
||||
"Januar",
|
||||
"Februar",
|
||||
"März",
|
||||
"April",
|
||||
"Mai",
|
||||
"Juni",
|
||||
"Juli",
|
||||
"August",
|
||||
"September",
|
||||
"Oktober",
|
||||
"November",
|
||||
"Dezember"
|
||||
],
|
||||
"firstDay": 1
|
||||
},
|
||||
autoApply: true,
|
||||
autoUpdateInput: false,
|
||||
"startDate": startDate,
|
||||
"endDate": endDate,
|
||||
}, function(start, end, label) {
|
||||
|
||||
// console.log("New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')");
|
||||
// Lets update the fields manually this event fires on selection of range
|
||||
var selectedStartDate = start.format('DD.MM.YYYY'); // selected start
|
||||
var selectedEndDate = end.format('DD.MM.YYYY'); // selected end
|
||||
|
||||
var $checkinInput = $('#fewo_booking_request_fromDate');
|
||||
var $checkoutInput = $('#fewo_booking_request_toDate');
|
||||
|
||||
// Updating Fields with selected dates
|
||||
$checkinInput.val(selectedStartDate);
|
||||
$checkoutInput.val(selectedEndDate);
|
||||
|
||||
// Setting the Selection of dates on calender on CHECKOUT FIELD (To get this it must be binded by Ids not Calss)
|
||||
var checkOutPicker = $checkoutInput.data('daterangepicker');
|
||||
checkOutPicker.setStartDate(selectedStartDate);
|
||||
checkOutPicker.setEndDate(selectedEndDate);
|
||||
|
||||
// Setting the Selection of dates on calender on CHECKIN FIELD (To get this it must be binded by Ids not Calss)
|
||||
var checkInPicker = $checkinInput.data('daterangepicker');
|
||||
checkInPicker.setStartDate(selectedStartDate);
|
||||
checkInPicker.setEndDate(selectedEndDate);
|
||||
loadCalculationFewo();
|
||||
|
||||
});
|
||||
|
||||
$('#fewo_booking_request_fromDate, #fewo_booking_request_toDate').on('show.daterangepicker', function(ev, picker) {
|
||||
/* console.log(picker.startDate.format('YYYY-MM-DD'));
|
||||
console.log(picker.endDate.format('YYYY-MM-DD'));
|
||||
*/
|
||||
});
|
||||
});
|
||||
|
|
@ -1,27 +1,2 @@
|
|||
$(document).ready(function() {
|
||||
|
||||
function scrollToTabContent(tabSelector)
|
||||
{
|
||||
$(document.body).animate({
|
||||
scrollTop: $(tabSelector).offset().top - 220
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
function activateTravelDatesTab()
|
||||
{
|
||||
$('[href=\'#travel-dates-content-tab\']').tab('show');
|
||||
scrollToTabContent('#travel-dates-content-tab');
|
||||
}
|
||||
|
||||
$('.nav-tabs > li > a').click(function() {
|
||||
scrollToTabContent($(this).attr('href'));
|
||||
});
|
||||
|
||||
$('.st-slider-booking-btn').click(activateTravelDatesTab);
|
||||
|
||||
if (location.hash === '#travel-dates-content-tab')
|
||||
{
|
||||
activateTravelDatesTab();
|
||||
}
|
||||
|
||||
});
|
||||
8
trunk/src/AppBundle/Resources/public/vendor/daterangepicker/min/daterangepicker-min.js
vendored
Normal file
|
|
@ -79,6 +79,9 @@ class LodgingCalendarService
|
|||
$day->setIsReservationEnd(false);
|
||||
$day->setIsEmpty(true);
|
||||
$day->setIsPastDate(false);
|
||||
$day->setIsBookableEnd(false);
|
||||
|
||||
|
||||
|
||||
$data[] = $day;
|
||||
}
|
||||
|
|
@ -96,6 +99,9 @@ class LodgingCalendarService
|
|||
$day->setIsReservationBegin(false);
|
||||
$day->setIsReservationEnd(false);
|
||||
$day->setIsEmpty(false);
|
||||
$day->setIsBookableEnd(false);
|
||||
|
||||
|
||||
if($datetime < $now){
|
||||
$day->setIsPastDate(true);
|
||||
}else{
|
||||
|
|
@ -117,6 +123,9 @@ class LodgingCalendarService
|
|||
$day->setIsReservationEnd(false);
|
||||
$day->setIsEmpty(true);
|
||||
$day->setIsPastDate(false);
|
||||
$day->setIsBookableEnd(false);
|
||||
|
||||
|
||||
|
||||
$data[] = $day;
|
||||
}
|
||||
|
|
@ -677,6 +686,88 @@ class LodgingCalendarService
|
|||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function checkDatesBeforeReservationBegin($paddedCalendar, $currDay, $season){
|
||||
|
||||
$bool = true;
|
||||
|
||||
//days
|
||||
$minDays = $season->getMinimumStay();
|
||||
$setMinStayFrom = clone $currDay->getDate();
|
||||
$setMinStayTo = clone $currDay->getDate();
|
||||
// $setMinStayFrom->modify('-1 day');
|
||||
|
||||
//$minStayInterval = \DateInterval::createFromDateString('-1 day');
|
||||
// $minStayPeriod = new \DatePeriod($setMinStayTo->modify('+1 day'), $minStayInterval, $setMinStayFrom->modify('-'.($minDays-1).' days'));
|
||||
$setMinStayTo->modify('-'.($minDays).' days');
|
||||
$counter = 0;
|
||||
$last = $minDays;
|
||||
|
||||
for($mSdt = $setMinStayFrom; $mSdt >= $setMinStayTo; $mSdt->modify('-1 day')){
|
||||
|
||||
if(isset($paddedCalendar[$mSdt->format("Y-n")])) {
|
||||
$key = $this->findCalendarDayKey($paddedCalendar[$mSdt->format("Y-n")], $mSdt->format("d"));
|
||||
$checkDay = $paddedCalendar[$mSdt->format("Y-n")]['data'][$key];
|
||||
|
||||
|
||||
if(empty($checkDay->getDate()) || empty($checkDay->getPrice())) {
|
||||
continue;
|
||||
}
|
||||
if(!empty($checkDay->getPrice()->getSeason()) && $minDays != $checkDay->getPrice()->getSeason()->getMinimumStay()){
|
||||
if($minDays > $checkDay->getPrice()->getSeason()->getMinimumStay()){
|
||||
$last = $counter+$checkDay->getPrice()->getSeason()->getMinimumStay();
|
||||
$setMinStayTo->modify('-'.($last).' days');
|
||||
}
|
||||
if($minDays < $checkDay->getPrice()->getSeason()->getMinimumStay()){
|
||||
$last = $counter+$checkDay->getPrice()->getSeason()->getMinimumStay();
|
||||
$setMinStayTo->modify('-'.($last).' days');
|
||||
}
|
||||
$minDays = $checkDay->getPrice()->getSeason()->getMinimumStay();
|
||||
}
|
||||
}
|
||||
|
||||
$counter++;
|
||||
|
||||
//look is the last from $minDays bookable
|
||||
if($counter == $minDays+1 && !$checkDay->getIsBookable()){
|
||||
$bool = false;
|
||||
}
|
||||
|
||||
if($counter <= $last) {
|
||||
|
||||
if($checkDay->getIsReserved()) {
|
||||
$bool = false;
|
||||
}else{
|
||||
if($counter>1){
|
||||
$preCheckDate = clone $checkDay->getDate();
|
||||
$preCheckDate->modify('-'.($minDays).' days');
|
||||
|
||||
$preKey = $this->findCalendarDayKey($paddedCalendar[$preCheckDate->format("Y-n")], $preCheckDate->format("d"));
|
||||
$preCheckDay = $paddedCalendar[$preCheckDate->format("Y-n")]['data'][$preKey];
|
||||
|
||||
if($preCheckDay && $preCheckDay->getIsBookable()){
|
||||
$checkDay->setIsBookableEnd(true);
|
||||
|
||||
}
|
||||
// $checkDay->setIsBookableEnd(true);
|
||||
}
|
||||
}
|
||||
$checkDay->setIsBookable(false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if ($bool && $currDay->getIsReservationBegin() == true && $season->getOnlyWeekday() != null && $season->getOnlyWeekday() == $currDay->getDate()->format('w')){
|
||||
$currDay->setIsBookableEnd(true);
|
||||
}
|
||||
|
||||
if ($bool && $currDay->getIsReservationBegin() == true && $season->getOnlyWeekday() == null){
|
||||
$currDay->setIsBookableEnd(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function calendarAndFillDayStates($paddedCalendar, FewoLodging $lodging){
|
||||
|
||||
$startMonth = array_values($paddedCalendar)[0]['monthNumber'];
|
||||
|
|
@ -760,53 +851,15 @@ class LodgingCalendarService
|
|||
$currDay->setIsBookable(false);
|
||||
}
|
||||
//check for the min sty days.
|
||||
if ($currDay->getIsReservationBegin() == true)
|
||||
{
|
||||
//days
|
||||
$minDays = $season->getMinimumStay();
|
||||
$setMinStayFrom = clone $currDay->getDate();
|
||||
$setMinStayTo = clone $currDay->getDate();
|
||||
|
||||
//$minStayInterval = \DateInterval::createFromDateString('-1 day');
|
||||
// $minStayPeriod = new \DatePeriod($setMinStayTo->modify('+1 day'), $minStayInterval, $setMinStayFrom->modify('-'.($minDays-1).' days'));
|
||||
$setMinStayTo->modify('-'.($minDays).' days');
|
||||
$counter = 0;
|
||||
$last = $minDays;
|
||||
|
||||
for($mSdt = $setMinStayFrom; $mSdt >= $setMinStayTo; $mSdt->modify('-1 day')){
|
||||
|
||||
if(isset($paddedCalendar[$mSdt->format("Y-n")])) {
|
||||
$key = $this->findCalendarDayKey($paddedCalendar[$mSdt->format("Y-n")], $mSdt->format("d"));
|
||||
$checkDay = $paddedCalendar[$mSdt->format("Y-n")]['data'][$key];
|
||||
|
||||
|
||||
|
||||
if(!empty($checkDay->getPrice())){
|
||||
if(!empty($checkDay->getPrice()->getSeason()) && $minDays != $checkDay->getPrice()->getSeason()->getMinimumStay()){
|
||||
|
||||
if($minDays > $checkDay->getPrice()->getSeason()->getMinimumStay()){
|
||||
$last = $counter+$checkDay->getPrice()->getSeason()->getMinimumStay();
|
||||
$setMinStayTo->modify('-'.($last).' days');
|
||||
}
|
||||
if($minDays < $checkDay->getPrice()->getSeason()->getMinimumStay()){
|
||||
$last = $counter+$checkDay->getPrice()->getSeason()->getMinimumStay();
|
||||
$setMinStayTo->modify('-'.($last).' days');
|
||||
|
||||
}
|
||||
$minDays = $checkDay->getPrice()->getSeason()->getMinimumStay();
|
||||
}
|
||||
}
|
||||
$counter++;
|
||||
if($counter <= $last) {
|
||||
$checkDay->setIsBookable(false);
|
||||
}
|
||||
}
|
||||
if ($currDay->getIsReservationBegin() == true) {
|
||||
$this->checkDatesBeforeReservationBegin($paddedCalendar, $currDay, $season);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
//$season is end
|
||||
}
|
||||
return $paddedCalendar;
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ class CalendarDayState
|
|||
/**
|
||||
* @var bool
|
||||
*/
|
||||
private $isBookable; // ist buchbar? nur wenn isReserved = false und isInSeason = true
|
||||
private $isBookable; // ist buchbar? nur wenn isReserved = false
|
||||
|
||||
/**
|
||||
* @var bool
|
||||
|
|
@ -51,6 +51,11 @@ class CalendarDayState
|
|||
*/
|
||||
private $isReservationEnd;
|
||||
|
||||
/**
|
||||
* @var bool
|
||||
*/
|
||||
private $isBookableEnd; // ist buchbar? aber nur als Ende der Reise
|
||||
|
||||
/**
|
||||
* @var \DateTime|null
|
||||
*/
|
||||
|
|
@ -162,6 +167,22 @@ class CalendarDayState
|
|||
$this->isBookable = $isBookable;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
public function getIsBookableEnd(): bool
|
||||
{
|
||||
return $this->isBookableEnd;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param bool isBookableEnd
|
||||
*/
|
||||
public function setIsBookableEnd(bool $isBookableEnd)
|
||||
{
|
||||
$this->isBookableEnd = $isBookableEnd;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -254,6 +275,10 @@ class CalendarDayState
|
|||
$ret .= 'calendar-day-non ';
|
||||
}
|
||||
|
||||
if($this->getIsBookableEnd()){
|
||||
$ret .= 'bookable-end ';
|
||||
}
|
||||
|
||||
if($this->getIsReserved()){
|
||||
$ret .= 'calendar-day-disabled ';
|
||||
return $ret;
|
||||
|
|
@ -283,8 +308,15 @@ class CalendarDayState
|
|||
if($this->getIsBookable()){
|
||||
return $ret;
|
||||
}
|
||||
|
||||
if($this->getIsBookableEnd()){
|
||||
$ret = 'bookable-end normal';
|
||||
}else{
|
||||
$ret = "normal";
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
return $ret;
|
||||
|
||||
|
|
|
|||
|
|
@ -57,14 +57,15 @@ class FewoBookingRequestValidator extends ConstraintValidator
|
|||
$timeDiff = date_diff($fromDate, $toDate);
|
||||
$numberDays = $timeDiff->days;
|
||||
|
||||
$withinSeason = false;
|
||||
$withinSeason = true;
|
||||
$alreadyReserved = false;
|
||||
|
||||
if($fromDate >= $season->getFromDate()
|
||||
/* if($fromDate >= $season->getFromDate()
|
||||
&& $toDate <= $season->getToDate())
|
||||
{
|
||||
$withinSeason = true;
|
||||
}
|
||||
*/
|
||||
|
||||
/** @var FewoReservation $reservation */
|
||||
foreach($reservations as $reservation)
|
||||
|
|
|
|||
BIN
trunk/web/android-chrome-192x192.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
trunk/web/apple-touch-icon.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
9
trunk/web/browserconfig.xml
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
||||
2
trunk/web/css/header-min.css
vendored
1
trunk/web/css/my-fewo.css
Normal file
1
trunk/web/css/my-fewo.css.map
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["../../src/AppBundle/Resources/public/css/daterangepicker.css","../../src/AppBundle/Resources/public/css/fewo.css"],"names":[],"mappings":"AAAA,iBACE,SAAU,SACV,MAAO,QACP,iBAAkB,KAClB,cAAe,IACf,OAAQ,IAAI,MAAM,KAClB,MAAO,MACP,UAAW,KACX,QAAS,EACT,WAAY,IACZ,IAAK,MACL,KAAM,KACN,QAAS,KACT,QAAS,KACT,YAAa,MACb,UAAW,KACX,YAAa,IAGU,uBAAzB,wBACE,SAAU,SACV,QAAS,aACT,oBAAqB,eACrB,QAAS,GAGX,wBACE,IAAK,KACL,aAAc,IAAI,MAAM,YACxB,YAAa,IAAI,MAAM,YACvB,cAAe,IAAI,MAAM,KAG3B,uBACE,IAAK,KACL,aAAc,IAAI,MAAM,YACxB,cAAe,IAAI,MAAM,KACzB,YAAa,IAAI,MAAM,YAGzB,kCACE,MAAO,IAGT,iCACE,MAAO,KAGT,oCACE,KAAM,EACN,MAAO,EACP,MAAO,EACP,YAAa,KACb,aAAc,KAGhB,mCACE,KAAM,EACN,MAAO,EACP,MAAO,EACP,YAAa,KACb,aAAc,KAGhB,mCACE,KAAM,IAGR,kCACE,KAAM,KAGR,yBACE,WAAY,KAGd,gCACE,IAAK,QACL,OAAQ,KACR,cAAe,QACf,WAAY,IAAI,MAAM,KAGxB,+BACE,IAAK,QACL,OAAQ,KACR,cAAe,QACf,WAAY,IAAI,MAAM,KAGxB,iDAAkD,sCAChD,MAAO,KAGT,sCACE,QAAS,KAGX,6CACE,QAAS,MAGX,4CACE,QAAS,MAGX,yCACE,QAAS,KAGX,+BACE,QAAS,KACT,UAAW,MAGb,oCACE,QAAS,IAAI,EAAE,IAAI,IAGrB,qCACE,QAAS,IAGX,sDACE,OAAQ,KAGV,4CAA6C,4CAC3C,MAAO,KACP,OAAQ,MAAM,KACd,aAAc,EAAE,IAAI,IAAI,EACxB,cAAe,EACf,QAAS,aACT,QAAS,IAGX,4CACE,UAAW,eACX,kBAAmB,eAGrB,4CACE,UAAW,eACX,kBAAmB,eAGgB,oCAArC,oCACE,YAAa,OACb,WAAY,OACZ,eAAgB,OAChB,UAAW,KACX,MAAO,KACP,OAAQ,KACR,YAAa,KACb,UAAW,KACX,cAAe,IACf,OAAQ,EAAE,MAAM,KAChB,YAAa,OACb,OAAQ,QAGV,iCACE,OAAQ,IAAI,MAAM,KAClB,cAAe,IACf,iBAAkB,KAGpB,uCACE,MAAO,KACP,OAAQ,EACR,eAAgB,EAChB,gBAAiB,SAEnB,oCAAqC,oCACnC,iBAAkB,KAClB,aAAc,YACd,MAAO,QAGT,yBAA0B,yBACxB,UAAW,IACX,MAAO,KAOT,wCACE,cAAe,EAIjB,0BACE,MAAO,KAET,8BAA+B,oCAC7B,iBAAkB,QAClB,cAAe,EACf,OAAQ,YAIV,mDACE,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFACZ,cAAe,EAIjB,iDACE,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFACZ,cAAe,EAGsC,+CAAvD,sDACE,WAAY,QACZ,WAAY,iEACZ,WAAY,oEACZ,WAAY,4DACZ,OAAQ,2GACR,cAAe,EAejB,+DACE,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFACZ,cAAe,EAGjB,4DACE,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFACZ,cAAe,EAKW,mCAAsE,yCAAlG,2BAAgE,iCAC9D,iBAAkB,kBAClB,cAAe,EACf,OAAQ,YAEiC,8CAA3C,0CACE,OAAQ,YACR,gBAAiB,KACjB,iBAAkB,kBAClB,cAAe,EAGjB,6BACE,iBAAkB,6BAClB,OAAQ,kBACR,cAAe,EACf,YAAa,IACb,gBAAiB,UAInB,mCACE,iBAAkB,mBAIpB,iCACE,OAAQ,kBAEV,wCAAyC,8CACvC,iBAAkB,QAClB,cAAe,EACf,OAAQ,YAGV,gEACE,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFACZ,cAAe,EAKjB,wCACE,MAAO,KACP,OAAQ,KACR,iBAAkB,mBAGpB,2BAA4B,iCAC1B,WAAY,cACZ,iBAAkB,4BAClB,MAAO,eAGT,6BACE,iBAAkB,6BAClB,aAAc,YACd,MAAO,KACP,cAAe,EAGjB,+BACE,cAAe,IAAI,EAAE,EAAE,IAGzB,6BACE,cAAe,EAAE,IAAI,IAAI,EAK3B,oCAAqC,mCACnC,UAAW,KACX,QAAS,IACT,OAAQ,KACR,OAAQ,EACR,OAAQ,QAGV,oCACE,aAAc,GACd,MAAO,IAGT,mCACE,MAAO,IAGuG,mCAAhH,mCAAoC,qCAAsC,qCACxE,MAAO,KACP,OAAQ,EAAE,KACV,WAAY,KACZ,OAAQ,IAAI,MAAM,KAClB,QAAS,IACT,QAAS,EACT,UAAW,KAGb,gCACE,WAAY,OACZ,OAAQ,IAAI,KAAK,EAAE,KACnB,YAAa,KACb,SAAU,SAGZ,gDACE,MAAO,KACP,OAAQ,YAGV,8BACE,MAAO,KACP,WAAY,MACZ,QAAS,IACT,WAAY,IAAI,MAAM,KACtB,QAAS,KACT,YAAa,KACb,eAAgB,OAGlB,+BACE,QAAS,aACT,UAAW,KACX,cAAe,IAGjB,mCACE,YAAa,IACb,UAAW,KACX,YAAa,IACb,QAAS,IAAI,IAGf,gDACE,YAAa,IAAI,MAAM,KAGzB,yBACE,MAAO,KACP,WAAY,KACZ,OAAQ,EAGV,uCACE,WAAY,IAGd,4BACE,WAAY,KACZ,OAAQ,EAAE,KACV,QAAS,EACT,MAAO,KAGT,4BACE,UAAW,KACX,QAAS,IAAI,KACb,OAAQ,QAGV,kCACE,iBAAkB,KAGpB,mCACE,iBAAkB,QAClB,MAAO,KAIT,yBACE,iBACE,MAAO,KACP,4BACE,MAAO,MACT,mCACE,MAAO,KACT,2CACE,MAAO,KAC4B,0CAArC,oCACE,MAAO,KAC4B,0CAArC,oCACE,MAAO,MACT,qBACE,UAAW,IACX,WAAY,KACZ,wCACE,MAAO,KACP,aAAc,EACd,wDACE,aAAc,KACd,wBAAyB,EACzB,2BAA4B,EAChC,yCACE,YAAa,EACb,yDACE,YAAa,KACb,uBAAwB,EACxB,0BAA2B,EAC/B,wDACE,cAAe,IACa,mCAA9B,6BACE,MAAO,KACX,qBACE,UAAW,IACX,WAAY,MACZ,wCACE,MAAO,MACP,YAAa,EACb,wDACE,YAAa,KACb,uBAAwB,EACxB,0BAA2B,EAC/B,yCACE,aAAc,EACd,yDACE,aAAc,KACd,wBAAyB,EACzB,2BAA4B,EAChC,wDACE,aAAc,KACc,mCAA9B,6BACE,WAAY,MACZ,MAAO,OACf,yBACE,yBACE,MAAO,KACT,6BACE,MAAO,KACT,6BACE,MAAO,MACT,oCACE,MAAO,gBC3fX,0BACI,iBAAkB,mBAClB,QAAS,IAGb,oCACI,iBAAkB,KAEtB,qCACI,iBAAkB,qBAEtB,kCACI,QAAS,GAEb,8CAEI,WAAuK,QACvK,WAA0L,iEAC1L,WAAyM,oEACzM,WAAuO,4DACvO,OAA0R,6GAE9R,qDAEI,WAAsc,QACtc,WAAyd,iEACzd,WAAwe,oEACxe,WAAsgB,4DACtgB,OAAyjB,6GAE7jB,gDACI,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFAEhB,8CACI,iBAAkB,QAClB,WAAY,qFACZ,WAAY,8IACZ,WAAY,wFACZ,WAAY,mFACZ,WAAY,oFACZ,WAAY,gFAGhB,0BACI,iBAAkB,oBAClB,QAAS,EAEb,gCACI,iBAAkB,QAGtB,qBACI,MAAO,QACP,YAAa,IACb,MAAO,KACP,QAAS,MACT,OAAQ,KACR,QAAS,IACT,gBAAiB,UAGrB,2BACI,MAAO,KACP,YAAa,IACb,MAAO,KACP,QAAS,MACT,OAAQ,KAIZ,6BACI,MAAO,QACP,YAAa,IACb,MAAO,KACP,QAAS,MACT,OAAQ,KACR,QAAS,IACT,gBAAiB,KAGrB,mCACI,MAAO,KACP,YAAa,IACb,MAAO,KACP,QAAS,MACT,OAAQ,KACR,gBAAiB,KACjB,iBAAkB"}
|
||||
BIN
trunk/web/favicon-16x16.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
trunk/web/favicon-32x32.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 12 KiB |
33
trunk/web/js/custom-min.js
vendored
11
trunk/web/js/fewoBooking-min.js
vendored
Normal file
|
|
@ -1,49 +0,0 @@
|
|||
{
|
||||
"name": "Stern Tours",
|
||||
"short_name": "sterntours",
|
||||
"theme_color": "#648859",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone",
|
||||
"orientation": "portrait",
|
||||
"Scope": "/",
|
||||
"start_url": "/",
|
||||
"splash_pages": null,
|
||||
"icons": [
|
||||
{
|
||||
"src": "\/android-icon-36x36.png",
|
||||
"sizes": "36x36",
|
||||
"type": "image\/png",
|
||||
"density": "0.75"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-48x48.png",
|
||||
"sizes": "48x48",
|
||||
"type": "image\/png",
|
||||
"density": "1.0"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-72x72.png",
|
||||
"sizes": "72x72",
|
||||
"type": "image\/png",
|
||||
"density": "1.5"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-96x96.png",
|
||||
"sizes": "96x96",
|
||||
"type": "image\/png",
|
||||
"density": "2.0"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-144x144.png",
|
||||
"sizes": "144x144",
|
||||
"type": "image\/png",
|
||||
"density": "3.0"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image\/png",
|
||||
"density": "4.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
BIN
trunk/web/mstile-150x150.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
42
trunk/web/safari-pinned-tab.svg
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.0.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 192 192" style="enable-background:new 0 0 192 192;" xml:space="preserve">
|
||||
<g>
|
||||
<path d="M80.3,172.1c0.5-8.3,0.9-13.8,1.2-19.2c-2.7,4.7-5.4,9.5-8.2,14.1c-0.8,1.3-1.9,2.4-2.9,3.6c0.3-2.8,0.3-5.6,0.8-8.4
|
||||
c0.7-4,1.6-8.1,2.4-12.1c-2.6,3-5.2,6.1-7.8,9.1c-2.3,2.7-4.7,5.3-7.1,7.9c1.1-3.4,2.2-6.8,3.4-10.2c1.1-3.2,2.2-6.4,3.4-9.6
|
||||
c-2.4,2.1-4.8,4.3-7.3,6.4c-2.7,2.2-5.5,4.2-8.3,6.3c1.5-3,2.9-6.1,4.5-9.1c1.6-3.2,3.3-6.4,5-9.6c-3,1.9-6.1,3.8-9.1,5.7
|
||||
c-2.7,1.7-5.3,3.5-8,5.2c1.7-2.8,3.3-5.5,5.1-8.3c1.9-3,3.8-5.9,5.7-8.8c-3.3,1.6-6.5,3.4-9.8,4.9c-2.7,1.2-5.5,2.2-8.3,3.2
|
||||
c1.8-2,3.6-4,5.4-6c2.6-2.9,5.1-5.7,7.7-8.6c-3.6,1.1-7.2,2.2-10.8,3.1c-2.5,0.7-5.1,1.2-7.6,1.7c2-1.8,4-3.6,6-5.3
|
||||
c2.9-2.5,5.9-4.9,8.9-7.3c-3.7,0.6-7.5,1.3-11.2,1.9c-3,0.5-6,0.9-9,1.3c2.7-1.7,5.3-3.3,8-5c3.5-2.3,7-4.6,10.5-6.9
|
||||
c-4.1,0.2-8.2,0.4-12.3,0.5c-2.3,0-4.5-0.2-6.8-0.3c2.1-1.1,4.1-2.4,6.2-3.3c3.8-1.6,7.6-3,11.5-4.5c-3.9-0.4-7.8-0.8-11.7-1.4
|
||||
c-2.4-0.4-4.8-1.1-7.2-1.7c2.3-0.8,4.5-1.6,6.8-2.3c3.7-1,7.4-1.9,11.1-2.8c-3.4-1-6.8-1.9-10.2-2.9c-2.8-0.8-5.6-1.7-8.4-2.5
|
||||
c3-0.5,6-0.9,9-1.4c3.3-0.5,6.6-1.1,9.8-1.7c-2.1-1.1-4.2-2.3-6.4-3.3c-3.6-1.7-7.2-3.3-10.8-5c4.1,0.2,8.1,0.3,12.2,0.5
|
||||
c2.5,0.1,5,0.2,7.4,0.3c-2.1-1.5-4.1-3.1-6.2-4.6c-3.1-2.2-6.3-4.2-9.4-6.4c3.7,0.5,7.5,1.1,11.2,1.6c2.6,0.3,5.3,0.5,7.9,0.8
|
||||
c-1.6-1.8-3.2-3.6-4.9-5.2c-3.4-3.1-6.8-6.2-10.3-9.2c4.2,1.7,8.4,3.4,12.7,5c2.1,0.8,4.4,1.2,6.6,1.8c-1.5-1.7-3.1-3.3-4.6-5
|
||||
c-3.5-3.7-6.9-7.5-10.4-11.2c4.2,2.3,8.3,4.7,12.6,6.9c2.7,1.4,5.7,2.4,8.5,3.6c-2.3-3.6-4.6-7.3-6.9-10.9c-1.8-3-3.6-6-5.3-9
|
||||
c2.7,2,5.5,4.1,8.2,6.2c3.3,2.6,6.7,5.2,10,7.8c-1.7-3.9-3.6-7.7-5.2-11.7c-1.2-3-2.1-6.1-3.2-9.2c2.2,2.2,4.5,4.5,6.7,6.7
|
||||
c2.8,2.9,5.5,5.8,8.3,8.8c-1.1-3.9-2.3-7.8-3.4-11.7c-1.1-3.9-2.2-7.8-3.4-11.7c2.4,3.3,4.7,6.6,7.2,9.9c2.3,3,4.6,6,6.9,9.1
|
||||
c-0.6-3.7-1.3-7.5-1.9-11.2c-0.5-3.5-1-7-1.4-10.5c1.7,2.9,3.3,5.8,5.1,8.7c2.3,3.8,4.6,7.6,6.9,11.5c-0.2-4.3-0.5-8.6-0.6-12.9
|
||||
c-0.1-3.7,0-7.4,0-11.2c1.4,3.5,2.9,7,4.2,10.6c1.6,4.2,3,8.5,4.6,12.8c0.4-4.2,0.9-8.4,1.3-12.6C95,24,95.5,20.2,96,16.3
|
||||
c1,3.9,2.1,7.7,3,11.6c1,4.2,1.8,8.5,2.7,12.7c1.2-4.3,2.4-8.6,3.7-12.9c1.1-3.8,2.4-7.6,3.6-11.3c0.2,3.9,0.5,7.7,0.7,11.6
|
||||
c0.2,4.3,0.4,8.6,0.7,12.9c2.1-3.9,4.2-7.7,6.4-11.5c1.8-3.3,3.7-6.5,5.6-9.8c-0.5,3.8-0.9,7.6-1.4,11.3c-0.6,4.4-1.2,8.7-1.8,13.1
|
||||
c2.6-3.8,5.1-7.6,7.8-11.3c2.3-3.2,4.9-6.2,7.3-9.3c-1.1,3.7-2.2,7.3-3.2,11c-1.2,4.2-2.4,8.5-3.6,12.7c3.5-3.5,7-7.1,10.6-10.6
|
||||
c2.3-2.3,4.8-4.4,7.2-6.6c-1.4,3-2.8,6.1-4.2,9.1c-2.1,4.2-4.2,8.4-6.3,12.6c3.9-2.6,7.9-5.3,11.8-7.9c2.4-1.5,4.9-2.8,7.3-4.2
|
||||
c-1.6,2.4-3,4.9-4.7,7.2c-2.7,3.7-5.5,7.2-8.3,10.8c4.2-2,8.5-4.1,12.7-6.1c3-1.4,6.1-2.7,9.2-4.1c-2.2,2.4-4.3,4.9-6.6,7.2
|
||||
c-3.2,3.4-6.6,6.6-9.8,10c4.8-1.4,9.6-2.9,14.4-4.3c2.8-0.8,5.6-1.5,8.4-2.2c-2.2,1.8-4.4,3.7-6.7,5.4c-3.8,2.8-7.7,5.5-11.6,8.3
|
||||
c4.8-0.2,9.7-0.4,14.5-0.6c2.7-0.1,5.4-0.3,8.1-0.5c-2.5,1.3-4.9,2.7-7.4,4c-4.2,2.1-8.4,4.2-12.6,6.3c4,0.5,7.9,1,11.9,1.4
|
||||
c3.3,0.4,6.6,0.7,9.9,1.1c-3.4,1-6.7,2.1-10.1,3.1c-3.1,0.9-6.2,1.8-9.3,2.6c3.1,0.6,6.2,1.2,9.3,1.8c3.2,0.7,6.5,1.6,9.7,2.4
|
||||
c-3,0.6-6,1.1-9,1.7c-2.9,0.6-5.8,1.2-8.6,1.8c2.9,0.8,5.7,1.5,8.6,2.3c3.3,0.9,6.5,1.9,9.8,2.9c-3.2,0.4-6.5,0.7-9.7,1.3
|
||||
c-2.7,0.4-5.3,1.1-8,1.7c2.5,1.3,5,2.7,7.5,4c3.2,1.6,6.4,3,9.6,4.6c-3.4-0.2-6.7-0.3-10.1-0.5c-3.6-0.2-7.2-0.5-10.9-0.8
|
||||
c3.1,2,6.2,4.1,9.3,6.1c3,2,6,3.9,9.1,5.9c-2.7-0.4-5.3-0.7-8-1.1c-4.1-0.7-8.3-1.4-12.4-2.1c3.4,2.6,6.8,5.2,10.2,7.9
|
||||
c2.1,1.7,4.1,3.4,6.1,5.2c-2.6-0.7-5.2-1.3-7.7-2c-4.3-1.3-8.6-2.6-12.9-4c3,3.3,6.2,6.6,9.1,10c1.4,1.6,2.5,3.5,3.7,5.3
|
||||
c-2-0.9-4.1-1.7-6.1-2.6c-4.2-2.1-8.4-4.2-12.7-6.3c2.7,3.6,5.5,7.2,8.1,10.9c1.8,2.5,3.3,5.1,4.9,7.7c-2.6-1.7-5.3-3.4-7.8-5.2
|
||||
c-3.4-2.4-6.6-4.9-10-7.3c1.4,3.2,2.8,6.4,4.4,9.6c1.5,3.1,3.1,6,4.7,9.1c-2.7-2.1-5.6-4.1-8.2-6.4c-3-2.7-5.7-5.6-8.6-8.4
|
||||
c1.5,4.1,3,8.1,4.3,12.2c1,3.2,1.9,6.4,2.8,9.6c-2.2-2.5-4.4-5.1-6.6-7.6c-2.2-2.5-4.4-4.9-6.6-7.4c0.6,3.3,1.3,6.6,1.9,9.9
|
||||
c0.7,3.7,1.3,7.3,1.9,11c-1.8-2.9-3.5-5.8-5.3-8.7c-2.3-3.5-4.7-6.9-7.1-10.3c0.4,4.8,0.8,9.6,1.1,14.4c0.1,2.2,0,4.4-0.1,6.5
|
||||
c-1.1-1.9-2.4-3.7-3.3-5.6c-2-4.5-3.8-9.2-5.7-13.7c-0.5,4.4-1,8.9-1.6,13.3c-0.3,2.4-1,4.8-1.5,7.2c-0.8-2.6-1.6-5.1-2.3-7.7
|
||||
c-1.1-4.1-2.2-8.2-3.2-12.3c-0.8,3.8-1.6,7.6-2.5,11.5c-0.8,3.3-1.6,6.6-2.4,9.9c-0.7-3.4-1.4-6.8-2-10.1
|
||||
c-0.6-3.4-1.1-6.8-1.7-10.2c-1.3,3.4-2.6,6.8-4.1,10.2c-1.4,3.2-3.1,6.4-4.7,9.6C80.3,173.6,80.3,171.4,80.3,172.1z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.5 KiB |
15
trunk/web/site.webmanifest
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"name": "SternTours",
|
||||
"short_name": "SternTours",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"start_url": "sterntours.de",
|
||||
"display": "standalone"
|
||||
}
|
||||
|
|
@ -3,6 +3,12 @@ $url = "http://www.sterntours.de/tt-suche?".str_replace("/travelsearch.php?", ""
|
|||
header("Location:".$url, true, 301);
|
||||
exit;
|
||||
|
||||
/*
|
||||
$url = "http://sterntours.local/tt-suche?".str_replace("/travelsearch.php?", "", $_SERVER['REQUEST_URI']);
|
||||
header("Location:".$url, true, 301);
|
||||
exit;
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
|
|
|||