templates/Press/overview.html.twig line 1

Open in your IDE?
  1. {% extends "Layout/default.html.twig" %}
  2. {% block navigation %}
  3.     {{ include('Press/Includes/pressHeader.html.twig') }}
  4. {% endblock %}
  5. {% block content %}
  6.     {{ include('Content/includes/hero.html.twig') }}
  7.     {{ include('Navigation/breadcrumb.html.twig') }}
  8.     {{ include('Includes/main-title-block-splitted-editable.html.twig') }}
  9.     {{ include('Includes/areablock.html.twig', {
  10.         suffix: 'top'
  11.     }) }}
  12.     {% set filterTab = app.request.get('tab', 'latest') %}
  13.     {% set items = [
  14.         {
  15.             "id": "latest-tab",
  16.             "text": "press.Aktuelles"|trans,
  17.             "href": "#latest",
  18.             "isActive": filterTab == 'latest',
  19.             "targetId": "latest",
  20.             showFilter: false,
  21.             pageName: "pageLatest",
  22.             ajaxPaging: false,
  23.         },
  24.         {
  25.             "id": "az-tab",
  26.             "text": "press.A-Z"|trans,
  27.             "href": "#az",
  28.             "isActive": filterTab == 'az',
  29.             "targetId": "az",
  30.             showFilter: true,
  31.             pageName: "pageAZ",
  32.             ajaxPaging: true
  33.         },
  34.         {
  35.             "id": "numbers-company-tab",
  36.             "text": "press.Zahlen & Unternehmen"|trans,
  37.             "href": "#numbersCompany",
  38.             "isActive": filterTab == 'numbersCompany',
  39.             "targetId": "numbersCompany",
  40.             showFilter: false,
  41.             pageName: "pageCompany",
  42.             ajaxPaging: true
  43.         },
  44.         {
  45.             "id": "topicscollection-tab",
  46.             "text": "press.Themensammlungen"|trans,
  47.             "href": "#topicscollection",
  48.             "isActive": filterTab == 'topicscollection',
  49.             "targetId": "topicscollection",
  50.             pageName: "pageTopics"
  51.         }
  52.     ] %}
  53.     <div class="content-block container">
  54.         {{ include('Includes/tabs.html.twig', {
  55.             "items": items
  56.         }) }}
  57.         <div class="tab-content" role="tabpanel">
  58.             {% for item in items %}
  59.                 <div class="tab-pane fade {{ item.isActive ? 'show active' : '' }}" id="{{ item.targetId }}"
  60.                      aria-labelledby="{{ item.id }}">
  61.                     {% if item.targetId == 'topicscollection' %}
  62.                         {{ include('Press/Includes/pressTopicsList.html.twig', {
  63.                             items: dossierList,
  64.                         }) }}
  65.                     {% else %}
  66.                         <div class="js-ajax-form position-relative mt-5" data-ajax-form-add-url-params="true">
  67.                             <div aria-live="polite">
  68.                                 <div class="">
  69.                                     {% if item.showFilter %}
  70.                                         <form action="/404"
  71.                                               data-action="{{ app.request.pathInfo }}?ajax"
  72.                                               class="js-ajax-form__form">
  73.                                             <input type="text" name="tab" value="{{ item.targetId }}" hidden>
  74.                                             <div class="row justify-content-center">
  75.                                                 <div class="col-md-3">
  76.                                                     {{ include('Form/Includes/select.html.twig', {
  77.                                                         id: 'category',
  78.                                                         inputModifier: "js-floating-label",
  79.                                                         labelModifier: "floating-label",
  80.                                                         inputWrapperModifier: "select__input-wrapper position-relative",
  81.                                                         name: "category",
  82.                                                         label: 'press.Kategorie'|trans,
  83.                                                         styleModifier: 'form-group--lg',
  84.                                                         options: categoriesDropdownItems|default([])
  85.                                                     }) }}
  86.                                                 </div>
  87.                                                 <div class="col-md-3">
  88.                                                     {{ include('Form/Includes/form-control.html.twig', {
  89.                                                         id: 'keyword',
  90.                                                         inputModifier: 'js-floating-label',
  91.                                                         inputWrapperModifier: 'position-relative',
  92.                                                         labelModifier: 'floating-label',
  93.                                                         label: 'press.Stichwortsuche'|trans,
  94.                                                         styleModifier: 'form-group--lg',
  95.                                                         name: 'keyword',
  96.                                                         value: app.request.get('keyword', '')
  97.                                                     }) }}
  98.                                                 </div>
  99.                                             </div>
  100.                                             <div class="text-center">
  101.                                                 <button type="submit" class="btn btn-primary-light">{{ 'press.Ergebnisse anzeigen'|trans }}</button>
  102.                                                 <div class="mt-3">
  103.                                                     <a href="#" class="text-primary-light text-underline js-ajax-form__reset" data-reset-name="category, keyword">
  104.                                                         {{ 'press.Filter zurücksetzen'|trans }}
  105.                                                     </a>
  106.                                                 </div>
  107.                                             </div>
  108.                                         </form>
  109.                                     {% endif %}
  110.                                     <div class="mt-5">
  111.                                         <div class="js-ajax-form__notifications mb-3" hidden></div>
  112.                                         <div class="js-ajax-form__error-area mb-3" hidden>
  113.                                             <button class="js-ajax-form__retry btn btn-info ml-2">{{ 'ajax.Retry'|trans }}</button>
  114.                                         </div>
  115.                                         {{ include ('Includes/loading-overlay.html.twig', {styleModifier: 'js-ajax-form__loading'}) }}
  116.                                         {% if item.targetId == 'latest' %}
  117.                                             {% set paginator = latestPaginator %}
  118.                                         {% elseif item.targetId == 'numbersCompany' %}
  119.                                             {% set paginator = companyPaginator %}
  120.                                         {% else %}
  121.                                             {% set paginator = allPaginator %}
  122.                                         {% endif %}
  123.                                         <div class="js-ajax-form__result">
  124.                                             {{ include('Press/Includes/pressOverviewList.html.twig', {
  125.                                                 paginator: paginator,
  126.                                                 activePressArticlesWishlistIds: activePressArticlesWishlistIds|default([]),
  127.                                                 pageName: item.pageName,
  128.                                                 ajaxPaging: item.ajaxPaging
  129.                                             }) }}
  130.                                         </div>
  131.                                     </div>
  132.                                 </div>
  133.                             </div>
  134.                         </div>
  135.                     {% endif %}
  136.                 </div>
  137.             {% endfor %}
  138.         </div>
  139.     </div>
  140.     {{ include('Includes/areablock.html.twig', {
  141.         suffix: 'bottom'
  142.     }) }}
  143. {% endblock %}
  144.     {% block javascripts %}
  145.         {% if not app.request.get('onlyInlineCss') %}
  146.         {{ include('Layout/includes/encore.html.twig', {
  147.             'staticDebugMode': staticDebugMode,
  148.             'file': 'js/press'
  149.         }) }}
  150.         {% endif %}
  151.     {% endblock %}