templates/areas/teaser-experience-slider/view.html.twig line 1

Open in your IDE?
  1. {% set bgImageSrc = '' %}
  2. {% set bgImageSrcMobile = '' %}
  3. {% if not pimcore_relation('backgroundImage').empty %}
  4.     {% set bgImageSrc = pimcore_relation('backgroundImage').element.thumbnail('experience-slider-area-bg') %}
  5.     {% set bgImageSrcMobile = pimcore_relation('backgroundImage').element.thumbnail('experience-slider-area--xs') %}
  6. {% endif %}
  7. {% if not pimcore_relation('backgroundImageMobile').empty %}
  8.     {% set bgImageSrcMobile = pimcore_relation('backgroundImageMobile').element.thumbnail('experience-slider-area--xs') %}
  9. {% endif %}
  10. <section class="content-block js-fade-in {{ editmode ? '' : 'experience-slider-area'}} js-lazy-img js-lazy-img--bg {{ include('Layout/includes/editmode-box-classes.html.twig') }} {{ styleModifier | default(null) }} {{ not pimcore_input('anchorTitle').empty ? 'js-anchor-nav__item' : '' }}"
  11.          data-lazy-img-media-query-backgrounds='{
  12.         "default": "{{ bgImageSrc }}",
  13.         "(max-width: 767px)": "{{ bgImageSrcMobile }}"
  14.          }' {% if not pimcore_input('anchorTitle').empty %}data-anchor-nav-title="{{ pimcore_input('anchorTitle').frontend }}"{% endif %}>
  15.     {% if not editmode %}
  16.         <img class="js-lazy-img experience-slider-area__claim" aria-hidden="true" alt data-src="/static/img/claims/{{ getSVGPathForExperienceTeaserBackgroundText(pimcore_select("background_text").empty ? 'experience' : pimcore_select("background_text").data, app.request.locale) }}">
  17.     {% endif %}
  18.     <div class="container container-md ">
  19.         {% if editmode %}
  20.             {% embed 'Includes/editmode-settings.html.twig' %}
  21.                 {% block additionalInfo %}
  22.                     <div>
  23.                         <label>
  24.                             Background Image
  25.                         </label>
  26.                         {{ pimcore_relation('backgroundImage', {'reload': true}) }}
  27.                     </div>
  28.                     <div class="mt-2">
  29.                         <label>
  30.                             Mobile Background Image (optional)
  31.                         </label>
  32.                         {{ pimcore_relation('backgroundImageMobile') }}
  33.                     </div>
  34.                     <div>
  35.                         <label>
  36.                             Teaser (max 11 Teaser others will be ignored)
  37.                             <small>Supported: DemiInfrastructure, DemiAdditionalService, BlogArticle, Community, Experience Teaser Snippet, Young Styria Accommodation</small>
  38.                         </label>
  39.                         {{ pimcore_relations('teaser', {
  40.                             'types': ['document', 'object'],
  41.                             'subtypes': ['snippet', 'object'],
  42.                             'classes': ['demiAdditionalService', 'demiInfrastructure', 'BlogArticle', 'Community', 'YoungStyriaAccommodation']
  43.                         }) }}
  44.                     </div>
  45.                     <div>
  46.                         <label>Background Text <small>(Language will be selected from the document language)</small>:</label>
  47.                         {{ pimcore_select("background_text", {
  48.                             "store": [
  49.                                 ["discover", "Discover"],
  50.                                 ["enjoy", "Enjoy"],
  51.                                 ["experience", "Experience"],
  52.                                 ["visit", "Visit"],
  53.                             ],
  54.                             "defaultValue" : "experience"
  55.                         }) }}
  56.                     </div>
  57.                 {% endblock %}
  58.             {% endembed %}
  59.         {% endif %}
  60.         <div class="experience-slider-area__content">
  61.             {{ include('Includes/title-block-editable.html.twig', {'isCentered': true}) }}
  62.             <div class="js-render-template" style="min-height: 1px;">
  63.                 <template class="js-render-template__template">
  64.                     <div class="{{ styleModifier | default(null) }}">
  65.                         <div class="js-experience-slider experience-slider">
  66.                             {% do jsConfig().add('experienceSlider', true) %}
  67.                             <div class="swiper-container js-experience-slider__slider experience-slider__container">
  68.                                 <div class="swiper-wrapper experience-slider__wrapper">
  69.                                     {% set elements = removeUnpublishedElements(pimcore_relations('teaser').elements) %}
  70.                                     {% for key,item in elements | filter ((item,key) => key < 11 ) %}
  71.                                         {% if item.published %}
  72.                                             <div class="swiper-slide experience-slider__swiper-slide">
  73.                                                 {% if item is instanceof('\\Pimcore\\Model\\Document\\Snippet') %}
  74.                                                     {{ pimcore_inc(item, {
  75.                                                         counter: loop.index < 10 ? "0" ~ loop.index : loop.index
  76.                                                     }) }}
  77.                                                 {% elseif item is instanceof('\\Pimcore\\Model\\DataObject\\BlogArticle') %}
  78.                                                     {% if item.articleDate.isPast() %}
  79.                                                         {{ include('areas/teaser-experience-slider/experienceTeaser.html.twig', {
  80.                                                             'index': loop.index < 10 ? "0" ~ loop.index : loop.index,
  81.                                                             'image': item.getTeaserImage(),
  82.                                                             'link': linkGenerator().generate(item, {relative: getUseRelativeLink()}),
  83.                                                             'title': item.title
  84.                                                         }) }}
  85.                                                     {% endif %}
  86.                                                 {% elseif item is instanceof('\\Pimcore\\Model\\DataObject\\Community') %}
  87.                                                     {{ include('areas/teaser-experience-slider/experienceTeaser.html.twig', {
  88.                                                         'index': loop.index < 10 ? "0" ~ loop.index : loop.index,
  89.                                                         'image': item.getTeaserimage(),
  90.                                                         'link': linkGenerator().generate(item, {relative: getUseRelativeLink()}),
  91.                                                         'title': item.name
  92.                                                     }) }}
  93.                                                 {% elseif item is instanceof('\\Pimcore\\Model\\DataObject\\DemiAdditionalService') or item is instanceof('\\Pimcore\\Model\\DataObject\\DemiInfrastructure') %}
  94.                                                     {{ include('areas/teaser-experience-slider/experienceTeaser.html.twig', {
  95.                                                         'index': loop.index < 10 ? "0" ~ loop.index : loop.index,
  96.                                                         'image': item.getFirstImage(),
  97.                                                         'link': item.class.linkgenerator.generate(item, {relative: getUseRelativeLink(), language: app.request.locale}),
  98.                                                         'title': item.name
  99.                                                     }) }}
  100.                                                 {% elseif item is instanceof('\\Pimcore\\Model\\DataObject\\YoungStyriaAccommodation') %}
  101.                                                     {{ include('areas/teaser-experience-slider/experienceTeaser.html.twig', {
  102.                                                         'index': loop.index < 10 ? "0" ~ loop.index : loop.index,
  103.                                                         'image': item.teaserImage,
  104.                                                         'link': item.class.linkgenerator.generate(item, {relative: getUseRelativeLink(), language: app.request.locale}),
  105.                                                         'title': item.name,
  106.                                                         isYoungStyria: true,
  107.                                                     }) }}
  108.                                                 {% endif %}
  109.                                             </div>
  110.                                         {% endif %}
  111.                                     {% endfor %}
  112.                                 </div>
  113.                                 <div class="swiper-scrollbar__wrapper experience-slider__swiper-scrollbar__wrapper">
  114.                                     <div class="swiper-scrollbar js-experience-slider__scrollbar"></div>
  115.                                 </div>
  116.                             </div>
  117.                             <div class="swiper-navigation">
  118.                                 <button class="swiper-button swiper-button--prev experience-slider__btn js-experience-slider__prev"><span class="icon icon-arrow-right" aria-label="Previous"></span></button>
  119.                                 <button class="swiper-button swiper-button--next experience-slider__btn js-experience-slider__next"><span class="icon icon-arrow-right" aria-label="Next"></span></button>
  120.                             </div>
  121.                         </div>
  122.                     </div>
  123.                 </template>
  124.             </div>
  125.         </div>
  126.     </div>
  127. </section>