{% set isBustravel = package.isBusTour %}
<div class="modal fade custom-modal" id="contactModal" tabindex="-1" role="dialog" aria-labelledby="contactModalLabel" aria-hidden="true">
<div class="modal-dialog custom-modal__container custom-modal__container--xl" role="document">
<div class="custom-modal__content modal-content">
<div class="custom-modal__header">
<button type="button" class="close custom-modal__close" data-dismiss="modal" aria-label="Close">
<span class="icon icon-close" aria-hidden="true"></span>
<span class="custom-modal__close-text">{{ 'modal.schließen'|trans }}</span>
</button>
</div>
<div class="custom-modal__body modal-body">
<div class="text-center mb-5">
<div class="custom-modal__sub-title">
{{'modal.Wann möchten Sie uns besuchen?'|trans}}
</div>
<div class="custom-modal__title h2" id="contactModalLabel">
{{'modal.Ihre Anfrage'|trans}}
</div>
</div>
<form action="" method="post" class="js-form-validation js-quickfinder js-elhc-form js-elhc-form-ajax">
<div class="row js-datepicker-range">
<input name="packageId" value="{{ package.id }}" hidden>
<input name="packageName" value="{{ package.title }}" hidden>
{% if app.session.flashBag.get('elhc_error') or not errors|default([]) is empty%}
<div class="col-md-12 alert alert-warning mb-2">
<ul>
{% set messages = errors|merge(app.session.flashBag.get('elhc_error')) %}
{% for message in messages %}
<li>{{ ('error.' ~ message)|trans }}</li>
{% endfor %}
</ul>
</div>
{% endif %}
<div class="col-md-6">
{{ include('Form/Includes/select.html.twig', {
id: 'salutation',
inputModifier: "js-floating-label",
labelModifier: "floating-label",
inputWrapperModifier: "select__input-wrapper position-relative",
name: "salutation",
required: true,
label: 'package-overview.Anrede'|trans,
styleModifier: 'form-group--sm',
options: [
{
"label": "",
"value": "",
"disabled": true,
"selected": true,
"class": "sr-only"
}, {
"label": 'package-overview.Frau'|trans,
"value": 'package-overview.Frau'|trans,
"class": '',
}, {
"label": 'package-overview.Herr'|trans,
"value": 'package-overview.Herr'|trans,
"class": ""
},],
errors: errors['salutation'] is defined ? [errors['salutation']] : null,
}) }}
</div>
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'title',
name: 'title',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Titel'|trans,
errors: errors['title'] is defined ? [errors['title']] : null,
}) }}
</div>
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'firstname',
name: 'firstname',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Vorname'|trans,
required: true,
errors: errors['firstname'] is defined ? [errors['firstname']] : null,
}) }}
</div>
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'lastname',
name: 'lastname',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Nachname'|trans,
required: true,
errors: errors['lastname'] is defined ? [errors['lastname']] : null,
}) }}
</div>
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'phone',
name: 'phone',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Telefon'|trans,
errors: errors['phone'] is defined ? [errors['phone']] : null,
}) }}
</div>
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'email',
name: 'email',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.E-Mail'|trans,
required: true,
type: 'email',
errors: errors['email'] is defined ? [errors['email']] : null,
}) }}
</div>
{% if package.enableCategoriesInForm %}
<div class="col-md-6">
{{ include('Form/Includes/select.html.twig', {
id: 'topic',
inputModifier: "js-floating-label",
labelModifier: "floating-label",
inputWrapperModifier: "select__input-wrapper position-relative",
name: "topic",
required: true,
label: 'package-overview.Thema auswählen'|trans,
styleModifier: '',
options: topicSelect|default([]),
errors: errors['topic'] is defined ? [errors['topic']] : null,
}) }}
</div>
{% endif %}
{% if package.enableCategoriesInForm %}
<div class="col-md-6">
{{ include('Form/Includes/select.html.twig', {
id: 'region',
inputModifier: "js-floating-label",
labelModifier: "floating-label",
inputWrapperModifier: "select__input-wrapper position-relative",
name: "region",
required: true,
label: 'package-overview.Region auswählen'|trans,
styleModifier: '',
options: regionSelect|default([]),
errors: errors['region'] is defined ? [errors['region']] : null,
}) }}
</div>
{% endif %}
<div class="col-6">
{{ include('Form/Includes/date-picker.html.twig', {
"id": "arrival",
"name": "arrival",
"label": "package-overview.Anreise"|trans,
"min": carbon().today().toDateTimeString(),
"value": carbon().today().toDateTimeString(),
"numberOfMonths": 2,
"styleModifier": "js-datepicker-range__from form-group--sm",
"inputHiddenModifier": "js-floating-label",
"inputWrapperModifier": "position-relative datepicker-container",
"labelModifier": "floating-label",
errors: errors['arrival'] is defined ? [errors['arrival']] : null,
}) }}
</div>
<div class="col-6">
{{ include('Form/Includes/date-picker.html.twig', {
"id": "departure",
"name": "departure",
"label": "package-overview.Abreise"|trans,
"min": carbon().today().toDateTimeString(),
"value": carbon().today().addWeek().toDateTimeString(),
"numberOfMonths": 2,
"styleModifier": "js-datepicker-range__to form-group--sm",
"inputHiddenModifier": "js-floating-label",
"inputWrapperModifier": "position-relative datepicker-container",
"labelModifier": "floating-label",
errors: errors['departure'] is defined ? [errors['departure']] : null,
}) }}
</div>
{% if isBustravel %}
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'persons',
name: 'persons',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Personenanzahl'|trans,
required: true,
type: 'number',
errors: errors['persons'] is defined ? [errors['persons']] : null,
}) }}
</div>
</div><div class="row">
<div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'doublerooms',
name: 'doublerooms',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Doppelzimmer'|trans,
required: true,
type: 'number',
errors: errors['doublerooms'] is defined ? [errors['doublerooms']] : null,
}) }}
</div> <div class="col-md-6">
{{ include('Form/Includes/form-control.html.twig', {
id: 'singlerooms',
name: 'singlerooms',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'contact-modal.Einzelzimmer'|trans,
required: true,
type: 'number',
errors: errors['singlerooms'] is defined ? [errors['singlerooms']] : null,
}) }}
</div>
{% else %}
<div class="col-6">
{{ include('Form/Includes/select.html.twig', {
id: 'adults',
inputModifier: "js-floating-label",
labelModifier: "floating-label",
inputWrapperModifier: "select__input-wrapper position-relative",
name: "adults",
required: true,
label: 'package-overview.Erwachsene'|trans,
styleModifier: 'form-group--sm',
options: adultsSelect|default([]),
errors: errors['adults'] is defined ? [errors['adults']] : null,
}) }}
</div>
<div class="col-6">
{{ include('Form/Includes/select.html.twig', {
id: 'children',
inputModifier: "js-floating-label js-quickfinder__child-input",
labelModifier: "floating-label",
inputWrapperModifier: "select__input-wrapper position-relative",
name: "children",
required: false,
label: 'package-overview.Kinder'|trans,
styleModifier: 'form-group--sm',
options: childrenSelect|default([]),
errors: errors['children'] is defined ? [errors['children']] : null,
}) }}
</div>
{% endif %}
</div>
<div class="row js-quickfinder__childs"></div>
<div class="row">
<div class="col-12">
{{ include('Form/Includes/text-area.html.twig', {
id: 'message',
name: 'message',
inputModifier: 'js-floating-label',
inputWrapperModifier: 'position-relative',
labelModifier: 'floating-label',
label: 'package-overview.Anregungen/Wünsche'|trans,
required: false,
errors: errors['message'] is defined ? [errors['message']] : null,
}) }}
</div>
</div>
<div class="text-right small mb-1">
*{{'contact-modal.Pflichtfelder'|trans}}
</div>
{{ include('Form/Includes/form-control.html.twig', {
type: 'hidden',
name: 'gdpr-text',
id: 'gdpr-text',
value: 'contact.Ich stimme den <a href="#">Datenschutzbestimmungen</a> zu.'|trans
}) }}
<div>{{ 'contact.Ich stimme den <a href="#">Datenschutzbestimmungen</a> zu.'|trans|raw }}</div>
<div class="text-center mt-4">
<button type="submit" class="btn btn-primary-light">{{'modal.Anfrage sende'|trans}}</button>
</div>
</form>
</div>
</div>
</div>
</div>