{#
/**
* @var \Pimcore\Templating\PhpEngine this
* @var \Pimcore\Templating\PhpEngine view
* @var \Pimcore\Templating\GlobalVariables app
* #
* @var Elements\Demi\Accommodation\Search\Parameter searchParam
* @var bool isSearch
* #
* @var showFilter array | all = Label & filter, button = only button, filter = only filter (for Desktop)
*
*/ #}
{% extends('@ElementsDemiFrontend/Layout/editmode-layout.html.twig') %}
{% block content %}
{% if editmode %}
<div class="container-fluid">
{% set availableBlocks = [
['stars', 'bundle_demi_editmode.filter.stars'|demi_core_editmode_trans({}, 'admin')],
['classifications', 'bundle_demi_editmode.filter.classifications'|demi_core_editmode_trans({}, 'admin')],
['towns', 'bundle_demi_editmode.filter.towns'|demi_core_editmode_trans({}, 'admin')],
['regions', 'bundle_demi_editmode.filter.regions'|demi_core_editmode_trans({}, 'admin')],
['districts', 'bundle_demi_editmode.filter.districts'|demi_core_editmode_trans({}, 'admin')],
['holidayThemes', 'bundle_demi_editmode.filter.holidayThemes'|demi_core_editmode_trans({}, 'admin')],
['facilities', 'bundle_demi_editmode.filter.facilities'|demi_core_editmode_trans({}, 'admin')],
['roomFacilities', 'bundle_demi_editmode.filter.roomFacilities'|demi_core_editmode_trans({}, 'admin')],
['categories', 'bundle_demi_editmode.filter.categories'|demi_core_editmode_trans({}, 'admin')],
['mealTypes', 'bundle_demi_editmode.filter.mealTypes'|demi_core_editmode_trans({}, 'admin')],
['marketingGroups', 'bundle_demi_editmode.filter.marketingGroups'|demi_core_editmode_trans({}, 'admin')],
['allowBookableOnly', 'bundle_demi_editmode.filter.allowBookableOnly'|demi_core_editmode_trans({}, 'admin')],
['allowFreeCancellationOnly', 'bundle_demi_editmode.filter.allowFreeCancellationOnly'|demi_core_editmode_trans({}, 'admin')],
['accoName', 'bundle_demi_editmode.filter.accoName'|demi_core_editmode_trans({}, 'admin')],
['specials', 'bundle_demi_editmode.filter.specials'|demi_core_editmode_trans({}, 'admin')],
['specialTypes', 'bundle_demi_editmode.filter.specialTypes'|demi_core_editmode_trans({}, 'admin')],
['filterObjects', 'bundle_demi_editmode.filter.filterObjects'|demi_core_editmode_trans({}, 'admin')],
['mappedFilterObjects', 'bundle_demi_editmode.filter.mappedFilterObjects'|demi_core_editmode_trans({}, 'admin')],
['accommodationTypes', 'bundle_demi_editmode.filter.accommodationTypes'|demi_core_editmode_trans({}, 'admin')],
] %}
{% set availableBlocks = availableBlocks + [['minBedrooms', 'bundle_demi_editmode.filter.minBedrooms'|demi_core_editmode_trans({}, 'admin')]] %}
{% for i in pimcore_iterate_block(pimcore_block('filterblock')) %}
<div class="alert alert-warning">
{{ pimcore_select('blocktype', {
'store' : availableBlocks,
'reload' : true
}) }}
{% if (pimcore_select('blocktype').getData()) %}
<div class="row">
<div class="col">
<div class="alert alert-info">
{{ include('@ElementsDemiFrontend/Snippet/filterSidebarEditmode/' ~ pimcore_select('blocktype').getData() ~ '.html.twig', {
'searchParam' : app.request.get("searchParam")
}) }}
</div>
</div>
</div>
{% endif %}
</div>
{% endfor %}
</div>
{% else %}
{% set showFilterParam = app.request().get('showFilter') %}
{% set searchParam = app.request.get("searchParam") %}
{% if searchParam %}
{% if not app.request.get("isSearch") and not pimcore_device().isPhone() %}
{% set include = demi_getDeviceDependentTemplate('@ElementsDemiFrontend/Snippet/filterSidebar/', 'price', container) %}
{{ include(include, {
'searchParam' : app.request.get("searchParam"),
'showFilter' : showFilterParam ?? 'all',
'noDate' : app.request.get("noDate"),
'isSearch' : app.request.get("isSearch"),
'isPackageSearch' : app.request.get("isPackageSearch"),
'minPrice' : searchParam.getPriceFrom(),
'maxPrice' : searchParam.getPriceTo(),
}) }}
{% endif %}
{% for i in pimcore_iterate_block(pimcore_block('filterblock')) %}
{% if (pimcore_select('blocktype').getData() and not app.request.get("isSearch")) or (app.request.get("isSearch") and pimcore_checkbox('showInSearchForm').isChecked()) or (app.request.get("isSearch") and pimcore_select('blocktype').getData() is same as 'mappedFilterObjects') %}
{% set forceTemplate = "" %}
{% if app.request.get("isSearch") %}
{% set forceTemplate = "mobile" %}
{% endif %}
{% set templateName = pimcore_select('blocktype').getData() %}
{% set include = demi_getDeviceDependentTemplate('@ElementsDemiFrontend/Snippet/filterSidebar/', templateName, container, forceTemplate) %}
{{ include(include, {
'searchParam' : app.request.get("searchParam"),
'showFilter' : showFilterParam ?? 'all',
'noDate' : app.request.get("noDate"),
'isSearch' : app.request.get("isSearch"),
'isPackageSearch' : app.request.get("isPackageSearch"),
'posOfFilter' : pimcore_block('filterblock').getCurrentIndex()
}) }}
{% endif %}
{% endfor %}
{% endif %}
{% endif %}
{% endblock %}