{% set level = level|default(0) %}
{% set id = id|default('main-navbar-nav') %}
{% set navType = navType|default('mega') %}
<section id="{{ id }}" class="{{ navType }}-nav {{ navType }}-nav--level-{{ level }} {{ level == 2 ? 'js-initially-show-first-collapse__collapse' : '' }} {{ level == 1 ? 'js-initially-show-first-collapse' : '' }} {{ styleModifier | default('js-nav__collapse') }}">
{% if hasMobileBackLink | default(false) %}
<button class="js-nav__list-toggle {{ navType }}-nav--level-{{ level }}__go-back">
<span class="icon icon-arrow-long mr-2" aria-hidden="true"></span>
{{ 'mobile.nav.zurück'|trans }}
</button>
{% endif %}
{% if currentPage|default(false) and level >= 1 %}
<div class="{{ navType }}-nav__title {{ navType }}-nav__title--level-{{ level }}" role="heading">
<a href="{{ currentPage.getUri() }}" class="{{ navType }}-nav__title-link {{ navType }}-nav__title-link--level-{{ level }} js-nav-active-state__link" data-event-tracking-category="Hauptnavigation" data-event-tracking-action="{{ currentPage.getDocument().getProperty('navTitleText') ?: currentPage.getLabel() }}" data-event-tracking-label="{{ firstLevelPage|default(false) ? (firstLevelPage.getLabel() ~ ' ') : '' }}{{ currentPage.getLabel() }}">
{{ currentPage.getDocument().getProperty('navTitleText') ?: currentPage.getLabel() }}
</a>
</div>
{% endif %}
<ul class="{{ navType }}-nav__list {{ navType }}-nav__list--level-{{ level }} {{ level == 1 ? 'scrolling-area scrolling-area--light' : '' }} list-unstyled js-nav__list" id="{{ id }}--list">
{% for pageIndex, page in pages | filter(page => page.isVisible() and not page.getDocument().getProperty('navigationExclude', false)) %}
{% set visibleChildren = false %}
{% set children = [] %}
{% if page.hasPages() %}
{% for p in page.getPages() %}
{% if p.isVisible() and not p.getDocument().getProperty('navigationExclude') %}
{% set visibleChildren = true %}
{% set children = children|merge([p]) %}
{% endif %}
{% endfor %}
{% endif %}
{% set isActive = false %}
{# {% set isActive = page.getActive(true) %}#}
{% set isOpen = isActive %} {# item.isOpen | default(false) #}
{% set isOpenOnlyDesktop = item.isOpenOnlyDesktop | default(false) %}
{% set hasChildren = visibleChildren and level < 2 %}
{% set childId = id ~ '-' ~ loop.index %}
<li class="{{ navType }}-nav__item {{ navType }}-nav__item--level-{{ level }} js-nav__list-item {{ isOpenOnlyDesktop ? 'is-open--only-desktop' : '' }} {{ hasChildren ? 'has-children' : 'has-no-children' }}">
{% if hasChildren and level == '1' %}
<button
data-target="#{{ childId }}" aria-expanded="{{ isOpen ? 'true' : 'false' }}" aria-controls="collapseExample"
data-toggle="collapse"
{% if parent | default(null)%}
data-parent="{{ parent }}"
{% endif %}
class="{{ navType }}-nav__item-content {{ isOpen ? '' : 'collapsed' }} {{ navType }}-nav__item-content--level-{{ level }} {{ navType }}-nav__item-content--link">
{{ page.getLabel() }}
<span class="{{ navType }}-nav__collapse-icon icon icon-arrow-down" aria-hidden="true"></span>
{% if isActive %}
<span class="sr-only">{{ 'sr.current'|trans }}</span>
{% endif %}
</button>
{% elseif hasChildren and level != '1' %}
<button class="{{ navType }}-nav__item-content js-nav__list-toggle {{ navType }}-nav__item-content--level-{{ level }} {{ navType }}-nav__item-content--link">
{{ page.getLabel() }}
<span class="{{ navType }}-nav__collapse-icon--level-{{ level }}" aria-hidden="true"></span>
{% if isActive %}
<span class="sr-only">{{ 'sr.current'|trans }}</span>
{% endif %}
</button>
{% else %}
<a href="{{ page.getUri() }}"
class="{{ navType }}-nav__item-content {{ navType }}-nav__item-content--level-{{ level }} {{ navType }}-nav__item-content--link js-nav-active-state__link" data-event-tracking-category="Hauptnavigation" data-event-tracking-action="{{ currentPage|default(false) ? currentPage.getLabel() : page.getLabel() }}" data-event-tracking-label="{{ page.getLabel() }}">
{{ page.getLabel() }}
{% if isActive %}
<span class="sr-only">{{ 'sr.current'|trans }}</span>
{% endif %}
</a>
{% endif %}
{% if hasChildren %}
{% if level == 1 and not isOpen %}
{% set collapseStyleModifier = 'collapse' %}
{% elseif level == 1 and isOpen %}
{% set collapseStyleModifier = 'collapse' %}
{% else %}
{% set collapseStyleModifier = '' %}
{% endif %}
{{ include('Navigation/Partials/main.html.twig', {
'level': level + 1,
'id': childId,
'navType': navType,
'parent': level == 0 ? "#" ~ id ~ '--list' : '',
'styleModifier': collapseStyleModifier,
'hasMobileBackLink': level == 0 ? true : false,
'firstLevelPage': currentPage|default(null),
'currentPage': page,
'pages': children
}) }}
{% endif %}
</li>
{% endfor %}
</ul>
{% if level == 1 and currentPage.getDocument().getProperty('navigationSnippet') is instanceof('\\Pimcore\\Model\\Document\\Snippet') %}
{{ pimcore_inc(currentPage.getDocument().getProperty('navigationSnippet')) }}
{% endif %}
{% if level != 0 %}
{# the first section should not be closed as in the navigation extension the language switch (navigation_post_data.html.twig) will be added#}
{# because the language switch should not be cached to avoid cached language switch links#}
</section>
{% endif %}