templates/includes/navigation-mobile.html.twig line 1

Open in your IDE?
  1. {# get root node if there is no document defined (for pages which are routed directly through static route) #}
  2. {% set language = document.getProperty("language") %}
  3. {% if language == "en" %}
  4.     {% set startNodeId = 477 %}
  5. {% elseif language == "hu" %}
  6.     {% set startNodeId = 478 %}
  7. {% else %}
  8.     {% set startNodeId = 3 %}
  9. {% endif %}
  10. {% if not document is defined or not document %}
  11.     {% set document = pimcore_document(startNodeId) %}
  12. {% endif %}
  13. {# get the document which should be used to start in navigation | default home #}
  14. {% set navStartNode = pimcore_document(startNodeId) %}
  15. {% if not navStartNode is instanceof('\\Pimcore\\Model\\Document\\Page') %}
  16.     {% set navStartNode = document.getProperty('navigationRoot') %}
  17. {% endif %}
  18. {% set mainNavigation = pimcore_build_nav({
  19.     active: document,
  20.     root: navStartNode
  21. }) %}
  22. {# later you can render the navigation #}
  23. {# {{ pimcore_render_nav(mainNavigation) }} #}
  24. {% set menuRenderer = pimcore_nav_renderer("menu") %}
  25. <ul class="navbar-items d-lg-none">
  26.     {% for page in mainNavigation %}
  27.         {% if page.isVisible() and menuRenderer.accept(page) %}
  28.             {% set hasChildren = false %}
  29.             {% for child in page.getPages() %}
  30.                 {% if child.isVisible() or menuRenderer.accept(child) %}
  31.                     {% set hasChildren = true %}
  32.                 {% endif %}
  33.             {% endfor %}
  34.             {% if not hasChildren %}
  35.                 <li class="{{ (page.getActive(true)) ? "mobile-active" : "" }}">
  36.                     <a class="{{ page.getClass() }} {{ (page.getActive(true)) ? "mobile-active" : "" }}" href="{{ page.getHref() }}">
  37.                         {{ page.getLabel() }}
  38.                     </a>
  39.                 </li>
  40.             {% else %}
  41.                 <li class="{{ (page.getActive(true)) ? "mobile-active" : "" }}">
  42.                     <a class="{{ page.getClass() }} {{ (page.getActive(true)) ? "mobile-active" : "" }}" {# href="{{ page.getHref() }}" #} role="button">
  43.                         {{ page.getLabel() }}
  44.                     </a>
  45.                     <ul class="{{ page.getClass() }}">
  46.                         {% for child in page.getPages() %}
  47.                             {% if child.isVisible() and menuRenderer.accept(child) %}
  48.                                 {% set childHasChildren = false %}
  49.                                 {% for c in child.getPages() %}
  50.                                     {% if c.isVisible() or menuRenderer.accept(c) %}
  51.                                         {% set childHasChildren = true %}
  52.                                     {% endif %}
  53.                                 {% endfor %}
  54.                                 {% if not childHasChildren %}
  55.                                     <li class="{{ (child.getActive(true)) ? "active-trail" : "" }}">
  56.                                         <a class="sub-menu-item  {{ (child.getActive(true)) ? "active" : "" }}" href="{{ child.getHref() }}">
  57.                                             {{ child.getLabel() }}
  58.                                         </a>
  59.                                     </li>
  60.                                 {% else %}
  61.                                     <li class="{{ child.getClass() }} {{ (child.getActive(true)) ? "active-trail" : "" }}">
  62.                                         <a class="{{ child.getClass() }} sub-menu-item {{ (child.getActive(true)) ? "active" : "" }}" {# href="{{ child.getHref() }} #} role="button">
  63.                                             {{ child.getLabel() }}
  64.                                         </a>
  65.                                         <ul class="{{ child.getClass() }}">
  66.                                             {% for c in child.getPages() %}
  67.                                                 {% if c.isVisible() and menuRenderer.accept(c) %}
  68.                                                     <li class="{{ (c.getActive(true)) ? "active-trail" : "" }}">
  69.                                                         <a class="sub-menu-item " href="{{ c.getHref() }}">
  70.                                                             {{ c.getLabel() }}
  71.                                                         </a>
  72.                                                     </li>
  73.                                                 {% endif %}
  74.                                             {% endfor %}
  75.                                         </ul>
  76.                                     </li>
  77.                                 {% endif %}
  78.                             {% endif %}
  79.                         {% endfor %}
  80.                     </ul>
  81.                 </li>
  82.             {% endif %}
  83.         {% endif %}
  84.     {% endfor %}
  85. </ul>