bundles/FoxHabbit/BasisBundle/Resources/views/Areas/basisbundle-topnav/flyout-types/flyout-scrollspy-swiper-image.html.twig line 1

Open in your IDE?
  1. {% import '@FoxHabbitBasis/Macro/wrap.html.twig' as wrap_macro %}
  2. {% macro renderNavImage( page, imageIsRequired, showDescription) %}
  3.     {% set navImage = page.getDocument().getProperty('navImage')|default(null) %}
  4.     {% set navImageHasAlpha = false %}
  5.     {% if navImage and ( navImage.getMimeType() in ['image/png', 'image/gif'] ) %}
  6.         {% set navImageHasAlpha = true %}
  7.     {% endif %}
  8.     {% set navText = page.getDocument().getProperty('menuDescription')|default(null) %}
  9.     {% if navImage or not imageIsRequired %}
  10.         <div class="nav-image-container" data-page-id="{{ page.getId() }}">
  11.             <div class="parallax-box-wrapper">
  12.                 <div class="parallax-box parallax-box-topnav">
  13.                     <div class="parallax-box-background">
  14.                         <div class="oversized-background embed-responsive embed-responsive-1by1 {{ navImageHasAlpha ? 'bg-white' : 'bg-light-petrol' }}">
  15.                         </div>
  16.                     </div>
  17.                     <div class="parallax-box-item-center">
  18.                         {% if navImage %}
  19.                             {{ navImage.getThumbnail( navImageHasAlpha ? 'nav-image-alpha' : 'nav-image').getHtml({imgAttributes:{class:'img-fluid'}})|raw }}
  20.                         {% endif %}
  21.                     </div>
  22.                     {% if showDescription and navText %}
  23.                         <div class="parallax-box-footer">{{ navText }}</div>
  24.                     {% endif %}
  25.                 </div>
  26.             </div>
  27.         </div>
  28.     {% endif %}
  29. {% endmacro %}
  30. <div
  31.     class="{{ currentLevelConfig.flyout_class }} flyout-desktop"
  32.     data-flyout="{{ page.getId() }}"
  33.     data-level="{{ level }}">
  34.     {{ wrap_macro.wrapperOpen( currentLevelConfig.wrapper, _context) }}
  35.     {% if currentLevelConfig.close.template|default(null) %}
  36.         {% include '@FoxHabbitBasis/Areas/basisbundle-topnav/nav-parts/' ~ currentLevelConfig.close.template ~ '.html.twig' %}
  37.     {% endif %}
  38.     {{ wrap_macro.wrapperOpen( currentLevelConfig.entry_wrapper, _context) }}
  39.     {{ wrap_macro.wrapperOpen( currentLevelConfig.scrollspy_wrapper, _context) }}
  40.     {% for subpage in page %}
  41.         {% if nav_page_check_permissions(subpage, app.getUser()) %}
  42.             <!-- TODO: entry for scrollspy -->
  43.             <li class="nav-item"><a class="nav-link scrollto {{ subpage.getClass() }}" href="#{{ subpage.getId() }}" data-url-id="{{ subpage.getId() }}" data-folder-image="{{ subpage.getId() }}">{{ subpage.getLabel() }}</a>
  44.             </li>
  45.         {% endif %}
  46.     {% endfor %}
  47.     {{ wrap_macro.wrapperClose( currentLevelConfig.scrollspy_wrapper) }}
  48.     {{ wrap_macro.wrapperOpen( currentLevelConfig.swiper_wrapper, _context) }}
  49.     <div class="scroll-up"></div>
  50.     <div class="scrollspy-container" >
  51.         <div class="scrollspy-wrapper">
  52.             {% for subpage in page %}
  53.                 {% if nav_page_check_permissions(subpage, app.getUser()) %}
  54.                     <!-- TODO: entry for Large list in swiper -->
  55.                     <div class="mainlist {{ subpage.getClass() }}" id="{{ subpage.getId() }}">
  56.                         {% if not subpage.getDocument().getProperty('hideSecondMenuLevel') %}
  57.                             <a class="nav-link {{ subpage.getClass() }}" href="{{ subpage.getHref() }}" data-folder-image="{{ subpage.getId() }}">{{ subpage.getLabel() }}</a>
  58.                             {% if subpage.getDocument().getProperty('menuDescription') %}
  59.                                 <a class="nav-link-description" href="{{ subpage.getHref() }}" data-folder-image="{{ subpage.getId() }}">{{ subpage.getDocument().getProperty('menuDescription') }}
  60.                                     <div class="lorch-icon lorch-icon-next text-white">{{ 'navigation.entry.read_more'|trans }}</div></a>
  61.                             {% endif %}
  62.                         {% endif %}
  63.                         <div class="lvl1 {% if subpage.getDocument().getProperty('hideSecondMenuLevel') %} lvl1-toplevel{% endif %}">
  64.                             {% for childpage in subpage %}
  65.                                 {% if nav_page_check_permissions(childpage, app.getUser()) %}
  66.                                     <a class="nav-link-lvl2 {{ childpage.getClass() }}
  67.                                     {% if childpage.getDocument().getProperty('productsMenuHighlight') %} highlight-menu {% endif %}
  68.                                     {% if subpage.getDocument().getProperty('hideSecondMenuLevel') %} nav-link{% endif %}
  69.                                     {% if not subpage.getDocument().getProperty('hideSecondMenuLevel') %} no-children{% endif %}"
  70.                                     data-id="{{ childpage.getId() }}"
  71.                                     href="{{ childpage.getHref() }}"
  72.                                     data-folder-image="{{ childpage.getId() }}">{{ childpage.getLabel() }}</a>
  73.                                     {% if childpage.getDocument().getProperty('menuDescription') and subpage.getDocument().getProperty('hideSecondMenuLevel') %}
  74.                                         <a class="nav-link-description" href="{{ childpage.getHref() }}" data-folder-image="{{ childpage.getId() }}">{{ childpage.getDocument().getProperty('menuDescription') }}
  75.                                             <div class="lorch-icon lorch-icon-next text-white">{{ 'navigation.entry.read_more'|trans }}</div></a>
  76.                                     {% endif %}
  77.                                     {% if childpage.hasPages and subpage.getDocument().getProperty('hideSecondMenuLevel') %}
  78.                                         <div class="lvl2">
  79.                                             {% for subchildpage in childpage %}
  80.                                                 {% if nav_page_check_permissions(subchildpage, app.getUser()) %}
  81.                                                     <a class="nav-link-lvl3 {{ subchildpage.getClass() }}"
  82.                                                         data-id="{{ subchildpage.getId() }}"
  83.                                                         href="{{ subchildpage.getHref() }}"
  84.                                                         data-folder-image="{{ subchildpage.getId() }}">{{ subchildpage.getLabel() }}</a>
  85.                                                 {% endif %}
  86.                                             {% endfor %}
  87.                                         </div>
  88.                                     {% endif %}
  89.                                 {% endif %}
  90.                             {% endfor %}
  91.                         </div>
  92.                     </div>
  93.                 {% endif %}
  94.             {% endfor %}
  95.         </div>
  96.     </div>
  97.     <div class="scroll-down"></div>
  98.     {{ wrap_macro.wrapperClose( currentLevelConfig.swiper_wrapper) }}
  99.     {{ wrap_macro.wrapperOpen( currentLevelConfig.image_wrapper, _context) }}
  100.     {% for subpage in page %}
  101.         {% if nav_page_check_permissions(subpage, app.getUser()) %}
  102.             {% if subpage.getDocument().getProperty('navImage') is defined and not subpage.getDocument().getProperty('navImage') is empty %}
  103.                 {{ _self.renderNavImage( subpage, true, false) }}
  104.             {% endif %}
  105.             {% for childpage in subpage %}
  106.                 {% if nav_page_check_permissions(childpage, app.getUser()) %}
  107.                     {{ _self.renderNavImage( childpage, true, (not subpage.getDocument().getProperty('hideSecondMenuLevel'))) }}
  108.                     {% for subchildpage in childpage %}
  109.                         {% if nav_page_check_permissions(subchildpage, app.getUser()) %}
  110.                             {{ _self.renderNavImage( subchildpage, true, true) }}
  111.                         {% endif %}
  112.                     {% endfor %}
  113.                 {% endif %}
  114.             {% endfor %}
  115.         {% endif %}
  116.     {% endfor %}
  117.     {{ wrap_macro.wrapperClose( currentLevelConfig.image_wrapper) }}
  118.     {{ wrap_macro.wrapperClose( currentLevelConfig.entry_wrapper) }}
  119.     {{ wrap_macro.wrapperOpen( currentLevelConfig.claim_wrapper, _context) }}
  120.     {{ wrap_macro.wrapperClose( currentLevelConfig.claim_wrapper) }}
  121.     {{ wrap_macro.wrapperClose( currentLevelConfig.wrapper) }}
  122. </div>
  123. <div
  124.     class="{{ currentLevelConfig.flyout_class }} flyout-mobile"
  125.     data-flyout="{{ page.getId() }}"
  126.     data-level="{{ level }}">
  127.     {{ wrap_macro.wrapperOpen( currentLevelConfig.mobile_wrapper, _context) }}
  128.     {{ wrap_macro.wrapperOpen( currentLevelConfig.mobile_entry_wrapper, _context) }}
  129.     <div class="menu-header">{{ page.getLabel() }}</div>
  130.     {{ wrap_macro.wrapperOpen( currentLevelConfig.mobile_scrollspy_wrapper, _context) }}
  131.     {% for subpage in page %}
  132.         {% if nav_page_check_permissions(subpage, app.getUser()) %}
  133.             {% if subpage.hasChildren %}
  134.                 <li class="nav-item"><a class="nav-link scrollto {{ subpage.getClass() }}" href="#mobile{{ subpage.getId() }}">{{ subpage.getLabel() }}</a>
  135.                 </li>
  136.             {% else %}
  137.                 <li class="nav-item"><a class="nav-link scrollto {{ subpage.getClass() }}" href="{{ subpage.getHref() }}">{{ subpage.getLabel() }}</a>
  138.                 </li>
  139.             {% endif %}
  140.         {% endif %}
  141.     {% endfor %}
  142.     {{ wrap_macro.wrapperClose( currentLevelConfig.mobile_scrollspy_wrapper) }}
  143.     <div class="flyout-back" data-toggle="nav-flyout"><i class="lorch-icon-back"></i>{{ 'navigation.back.button'|trans }}</div>
  144.  <div class="mobile-menu-list hide">
  145.  <div class="mobile-menu-container">
  146.      <div class="mobile-scroll-wrapper">
  147.      <div class="mobile-scroll-inner">
  148.             {% for subpage in page %}
  149.                 {% if nav_page_check_permissions(subpage, app.getUser()) %}
  150.                     <!-- TODO: entry for Large list in swiper -->
  151.                     <div class="mainlist {{ subpage.getClass() }}" id="mobile{{ subpage.getId() }}">
  152.                         <div class="menu-header">{{ subpage.getLabel() }}</div>
  153.                         {% if not subpage.getDocument().getProperty('hideSecondMenuLevel') %}
  154.                             <a class="nav-link {{ subpage.getClass() }}" href="{{ subpage.getHref() }}">{{ subpage.getLabel() }}</a>
  155.                             {% if subpage.getDocument().getProperty('menuDescription') %}
  156.                                 <a class="nav-link-description" href="{{ subpage.getHref() }}">{{ subpage.getDocument().getProperty('menuDescription') }}
  157.                                     <div class="lorch-icon lorch-icon-next text-white">{{ 'navigation.entry.read_more'|trans }}</div></a>
  158.                             {% endif %}
  159.                         {% endif %}
  160.                         <div class="lvl1 {% if subpage.getDocument().getProperty('hideSecondMenuLevel') %} lvl1-toplevel{% endif %}">
  161.                             {% for childpage in subpage %}
  162.                                 {% if nav_page_check_permissions(childpage, app.getUser()) %}
  163.                                     <a class="nav-link-lvl2 {{ childpage.getClass() }}
  164.                                     {% if childpage.getDocument().getProperty('productsMenuHighlight') %} highlight-menu {% endif %}
  165.                                     {% if subpage.getDocument().getProperty('hideSecondMenuLevel') %} nav-link{% endif %}
  166.                                     {% if not subpage.getDocument().getProperty('hideSecondMenuLevel') %} no-children{% endif %}" data-id="{{ childpage.getId() }}"
  167.                                     href="{{ childpage.getHref() }}">{{ childpage.getLabel() }}</a>
  168.                                     {% if childpage.getDocument().getProperty('menuDescription') and subpage.getDocument().getProperty('hideSecondMenuLevel') %}
  169.                                         <a class="nav-link-description" href="{{ childpage.getHref() }}">{{ childpage.getDocument().getProperty('menuDescription') }}
  170.                                             <div class="lorch-icon lorch-icon-next text-white">{{ 'navigation.entry.read_more'|trans }}</div></a>
  171.                                     {% endif %}
  172.                                     {% if childpage.hasPages and subpage.getDocument().getProperty('hideSecondMenuLevel') %}
  173.                                         <div class="lvl2">
  174.                                             {% for subchildpage in childpage %}
  175.                                                 {% if nav_page_check_permissions(subchildpage, app.getUser()) %}
  176.                                                     <a class="nav-link-lvl3 {{ subchildpage.getClass() }}" data-id="{{ subchildpage.getId() }}"
  177.                                                     href="{{ subchildpage.getHref() }}">{{ subchildpage.getLabel() }}</a>
  178.                                                 {% endif %}
  179.                                             {% endfor %}
  180.                                         </div>
  181.                                     {% endif %}
  182.                                 {% endif %}
  183.                             {% endfor %}
  184.                         </div>
  185.                     </div>
  186.                 {% endif %}
  187.             {% endfor %}
  188.         </div>
  189.      </div>
  190.  </div>
  191.      <div class="flyout-back"><i class="lorch-icon-back"></i>{{ 'navigation.back.button'|trans }}</div>
  192.  </div>
  193.     {{ wrap_macro.wrapperClose( currentLevelConfig.mobile_swiper_wrapper) }}
  194.     {{ wrap_macro.wrapperClose( currentLevelConfig.mobile_entry_wrapper) }}
  195.     {{ wrap_macro.wrapperClose( currentLevelConfig.mobile_wrapper) }}
  196. </div>