custom/plugins/WbfkThemeMMedientechnik/src/Resources/views/storefront/utilities/thumbnail.html.twig line 1

Open in your IDE?
  1. {% sw_extends '@Storefront/storefront/utilities/thumbnail.html.twig' %}
  2. {% block thumbnail_utility %}
  3.     {% if load is not defined %}
  4.         {% set load = true %}
  5.     {% endif %}
  6.     {% if loadOriginalImage is not defined %}
  7.         {% set loadOriginalImage = false %}
  8.     {% endif %}
  9.     {% if autoColumnSizes is not defined %}
  10.         {% set autoColumnSizes = true %}
  11.     {% endif %}
  12.     {% if attributes is not defined %}
  13.         {% set attributes = {} %}
  14.     {% endif %}
  15.     {% if attributes.loading is not defined %}
  16.         {% set attributes = attributes|merge({'loading': 'lazy'}) %}
  17.     {% endif %}
  18.     {% set altText = "" %}
  19.     {% if media.translated.alt|length and not (media.translated.alt == media.fileName) %}
  20.         {% set altText = media.translated.alt %}
  21.     {% else %}
  22.         {% set productTitle = product.translated.name ?? product.name %}
  23.         {% if productTitle|length %}
  24.             {% set altText = productTitle %}
  25.         {% endif %}
  26.         {% set productPageTitle = page.product.translated.name ?? page.product.name %}
  27.         {% if altText|length == 0 and productPageTitle|length %}
  28.             {% set altText = productPageTitle %}
  29.         {% endif %}
  30.         {% set linkHeadline = element.translated.config.linkHeadline.value ?? element.linkHeadline %}
  31.         {% if altText|length == 0 and linkHeadline|length %}
  32.             {% set altText = linkHeadline %}
  33.         {% endif %}
  34.         {% set pageTitle = page.cmsPage.translated.name %}
  35.         {% if altText|length == 0 and pageTitle|length %}
  36.             {% set altText = pageTitle %}
  37.         {% endif %}
  38.         {% if altText|length == 0 %}
  39.             {% set altText = media.fileName %}
  40.         {% endif %}
  41.     {% endif %}
  42.     {% set attributes = attributes|merge({'alt': altText}) %}
  43.     {% if attributes.title is not defined %}
  44.         {% set attributes = attributes|merge({'title': altText}) %}
  45.     {% endif %}
  46.     {% if media.thumbnails|length > 0 %}
  47.         {% if autoColumnSizes and columns and sizes is not defined %}
  48.             {% set sizes = {
  49.                 'xs': (theme_config('breakpoint.sm') - 1) ~'px',
  50.                 'sm': (theme_config('breakpoint.md') - 1) ~'px',
  51.                 'md': ((theme_config('breakpoint.lg') - 1) / columns)|round(0, 'ceil') ~'px',
  52.                 'lg': ((theme_config('breakpoint.xl') - 1) / columns)|round(0, 'ceil') ~'px'
  53.             } %}
  54.             {% if layout == 'full-width' %}
  55.                 {% set container = 100 %}
  56.                 {% set sizes = sizes|merge({ 'xl': (container / columns)|round(0, 'ceil') ~'vw'}) %}
  57.             {% else %}
  58.                 {% set container = 1360 %}
  59.                 {% set sizes = sizes|merge({ 'xl': (container / columns)|round(0, 'ceil') ~'px'}) %}
  60.             {% endif %}
  61.         {% endif %}
  62.         {% set thumbnails = media.thumbnails|sort|reverse %}
  63.         {% set srcsetValue %}{% apply spaceless %}
  64.             {% if loadOriginalImage %}{{ media|sw_encode_media_url }} {{ thumbnails|first.width + 1 }}w, {% endif %}{% for thumbnail in thumbnails %}{{ thumbnail.url | sw_encode_url }} {{ thumbnail.width }}w{% if not loop.last %}, {% endif %}{% endfor %}
  65.         {% endapply %}{% endset %}
  66.         {% set sizesValue %}{% apply spaceless %}
  67.             {% set sizeFallback = 100 %}
  68.             {% if autoColumnSizes and columns %}
  69.                 {% set sizeFallback = (sizeFallback / columns)|round(0, 'ceil') %}
  70.             {% endif %}
  71.             {% set breakpoint = {
  72.                 'xs': theme_config('breakpoint.xs'),
  73.                 'sm': theme_config('breakpoint.sm'),
  74.                 'md': theme_config('breakpoint.md'),
  75.                 'lg': theme_config('breakpoint.lg'),
  76.                 'xl': theme_config('breakpoint.xl')
  77.             } %}
  78.             {% if thumbnails|first.width > breakpoint|reverse|first %}
  79.                 {#
  80.                 @deprecated tag:v6.5.0 - Variable `maxWidth` and parent condition will be removed
  81.                 #}
  82.                 {% set maxWidth = thumbnails|first.width %}
  83.             {% endif %}
  84.             {% for key, value in breakpoint|reverse %}(min-width: {{ value }}px) {{ sizes[key] }}{% if not loop.last %}, {% endif %}{% endfor %}, {{ sizeFallback }}vw
  85.         {% endapply %}{% endset %}
  86.     {% endif %}
  87.     {{ block('thumbnail_utility_img') }}
  88. {% endblock %}