themes/BootstrapTheme/templates/bundles/SyliusShopBundle/Product/Show/_images.html.twig line 1

Open in your IDE?
  1. {% if product.imagesByType('main') is not empty %}
  2.     {% set firstImage = app_get_first_product_image_by_position(product.imagesByType('main')) %}
  3.     {% set source_path =firstImage.path %}
  4.     {% set original_path = source_path|imagine_filter('sylius_shop_product_original') %}
  5.     {% set zoom_path = source_path|imagine_filter('app_shop_product_show_zoom') %}
  6.     {% set path = source_path|imagine_filter(filter|default('sylius_shop_product_large_thumbnail')) %}
  7. {% elseif product.imagesWithoutOneType.first %}
  8.     {% set firstImage = app_get_first_product_image_by_position(product.imagesWithoutOneType) %}
  9.     {% set source_path = firstImage.path %}
  10.     {% set original_path = source_path|imagine_filter('sylius_shop_product_original') %}
  11.     {% set zoom_path = source_path|imagine_filter('app_shop_product_show_zoom') %}
  12.     {% set path = source_path|imagine_filter(filter|default('sylius_shop_product_large_thumbnail')) %}
  13. {% else %}
  14.     {% set firstImage = null %}
  15.     {% set original_path = asset('images/spacer.png') %}
  16.     {% set zoom_path = asset('images/spacer.png') %}
  17.     {% set path = original_path %}
  18. {% endif %}
  19. <div class="" id="js-no-configurator">
  20.     <div data-product-image="{{ path }}" data-product-link="{{ original_path }}" class="big-img {% if product.imagesWithoutOneType|length > 1 %}{% else %}hasno-supp w-100{% endif %}">
  21.         <div class="art-img-content swiper-container">
  22.             <div class="little-imag-art swiper-wrapper">
  23.                 <div class="img-bit-article   swiper-slide">
  24.                     <a href="{{ zoom_path}}" class="" id="" data-toggle="lightbox" data-gallery="myGallery">
  25.                         <img src="{{asset('images/spacer.gif')}}" class="img-spacer" alt="{{ product.name }}">
  26.                         <img data-test="1" id="big" class="w-100" src="{{ zoom_path}}" alt="{{ product.name }}" {{ sylius_test_html_attribute('main-image') }}/>
  27.                     </a>
  28.                     {% if product.callouts is not null and product.callouts|length > 0 %}
  29.                         {% include "@SetonoSyliusCalloutPlugin/Shop/Product/Callout/_callouts.html.twig" with {'callouts' : product.callouts|setono_callouts} %}
  30.                     {% endif %}
  31.                 </div>
  32.                 {% if product.imagesWithoutOneType|length > 1 %}
  33.                     {% set myVal = 0 %}
  34.                     {% set productImagesOrdered = app_get_product_images_ordered_by_position(product.imagesWithoutOneType) %}
  35.                     {% for image in productImagesOrdered %}
  36.                         {% set myVal = myVal + 1 %}
  37.                         {% if myVal > 1 %}
  38.                             {% set path = image.path is not null ? image.path|imagine_filter('sylius_shop_product_small_thumbnail_inset') : asset('images/spacer.png') %}
  39.                             <div class="img-bit-article   swiper-slide" data-js-product-thumbnail>
  40.                                 {% if product.isConfigurable() and product.variants|length > 0 %}
  41.                                     {% include '@SyliusShop/Product/Show/_imageVariants.html.twig' %}
  42.                                 {% endif %}
  43.                                 <a href="{{ image.path|imagine_filter('sylius_shop_product_large_thumbnail_inset') }}" class=""   data-toggle="lightbox" data-gallery="myGallery">
  44.                                     <img src="{{asset('images/spacer.gif')}}" class="img-spacer" alt="{{ product.name }}">
  45.                                     <img class="w-100" src="{{ path }}" data-large-thumbnail="{{ image.path|imagine_filter('sylius_shop_product_large_thumbnail') }}" alt="{{ product.name }}" />
  46.                                 </a>
  47.                             </div>
  48.                         {% endif %}
  49.                     {% endfor %}
  50.                 {% endif %}
  51.             </div>
  52.             <div class="text-center content-pagination pt-2">
  53.                 <div class="select-container position-relative">
  54.                     <div class="artimg-prev btn2-slide-prev"></div>
  55.                     <div class="artimg-next btn2-slide-next"></div>
  56.                     <div class="swiper-pagination swiper-pagination-produit"></div>
  57.                 </div>
  58.             </div>
  59.         </div>
  60.     </div>
  61.     {% if product.imagesWithoutOneType|length > 1 %}
  62.     <div class="content-image-supp d-none d-md-block">
  63.         <div class="supp-img-desk ">
  64.             <div class="supp-prevdesk"></div>
  65.             <div class="supp-nextdesk"></div>
  66.             <div class="supp-img-swiper swiper-container py-2">
  67.                 <div class="suppwrapper-imag-art swiper-wrapper">
  68.                     <div class="img-bit-art  imgsupp swiper-slide">
  69.                         <div class="cursor-pointer"><img src="{{asset('images/spacer.gif')}}" class="img-spacer" alt=""><img src="{{ zoom_path }}" alt="{{ product.name }}" class="w-100" /></div>
  70.                     </div>
  71.                     {% set productImagesOrdered = app_get_product_images_ordered_by_position(product.imagesWithoutOneType) %}
  72.                     {% set myVal2 = 0 %}
  73.                     {{ sylius_template_event('sylius.shop.product.show.before_thumbnails', {'product': product}) }}
  74.                     {% for image in productImagesOrdered %}
  75.                         {% set myVal2 = myVal2 + 1 %}
  76.                         {% if myVal2 > 1 %}
  77.                             {% set path = image.path is not null ? image.path|imagine_filter('sylius_shop_product_small_thumbnail_inset') : '//placehold.it/200x200' %}
  78.                             <div class="swiper-slide gallery-bit-article " data-js-product-thumbnail>
  79.                                 {% if product.isConfigurable() and product.variants|length > 0 %}
  80.                                     {% include '@SyliusShop/Product/Show/_imageVariants.html.twig' %}
  81.                                 {% endif %}
  82.                                 <div class="cursor-pointer">
  83.                                     <img src="{{asset('images/spacer.gif')}}" class="img-spacer" alt="{{ product.name }}">
  84.                                     <img class="w-100" src="{{ path }}" data-large-thumbnail="{{ image.path|imagine_filter('sylius_shop_product_large_thumbnail') }}" alt="{{ product.name }}" />
  85.                                 </div>
  86.                             </div>
  87.                         {% endif %}
  88.                     {% endfor %}
  89.                 </div>
  90.                 <div class="swiper-pagination d-none swiper-pagination-supp"></div>
  91.             </div>
  92.         </div>
  93.     </div>
  94.       {% endif %}
  95. </div>
  96. {# stocker les images de bundle dans le cas où les bundle items ont des configurations simple #}
  97. {# pour afficher l'image du bundle item et non du bundle #}
  98. {% if product.productBundle %}
  99.     <div id="product-bundle-items-images">
  100.         {% for productBundleItem in product.productBundle.productBundleItems %}
  101.             {% if productBundleItem.productVariant.images.first %}
  102.                 {% set imagePath = productBundleItem.productVariant.images.first|imagine_filter('app_shop_product_show_zoom') %}
  103.             {% elseif productBundleItem.productVariant.product.imagesByType('main') is not empty %}
  104.                 {% set imagePath = app_get_first_product_image_by_position(productBundleItem.productVariant.product.imagesByType('main')).path|imagine_filter('app_shop_product_show_zoom') %}
  105.             {% elseif productBundleItem.productVariant.product.imagesWithoutOneType.first %}
  106.                 {% set imagePath = app_get_first_product_image_by_position(productBundleItem.productVariant.product.imagesWithoutOneType).path|imagine_filter('app_shop_product_show_zoom') %}
  107.             {% else %}
  108.                 {% set imagePath = null %}
  109.             {% endif %}
  110.             <div class="bundle-items-details"
  111.                  data-id="{{ productBundleItem.id }}"
  112.                  data-variant-id="{{ productBundleItem.productVariant.id }}"
  113.                  data-product-id="{{ productBundleItem.productVariant.product.id }}"
  114.                  data-variant-image="{{ imagePath }}"
  115.             ></div>
  116.         {% endfor %}
  117.     </div>
  118. {% endif %}