{% extends 'layout/default.html.twig' %}
{% block headScript %}
<!--Should be included only in product templates-->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css" />
{% endblock %}
{% block metaTags %}
<title>{{ product is defined ? product.metaTitle }}</title>
<meta name="description" content="{{ product is defined ? product.metaDescription }}"></meta>
<meta name="keywords" content="{{ product is defined ? product.metaKeywords }}"></meta>
<meta property="og:url" content="{{ app.request.uri }}" />
<meta property="og:type" content="website" />
<meta property="og:title" content="{{ product is defined ? product.ogTitle }}" />
<meta property="og:description" content="{{ product is defined ? product.ogDescription }}" />
<meta property="og:image" content="{{ product is defined and product.ogImage ? product.ogImage }}" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:site" content="{{ app.request.uri }}" />
<meta name="twitter:title" content="{{ product is defined ? product.ogTitle }}" />
<meta name="twitter:description" content="{{ product is defined ? product.ogDescription }}" />
<meta name="twitter:image" content="{{ product is defined and product.ogImage ? absolute_url(product.ogImage) }}" />
{% endblock %}
{% block contentBlock %}
{% set anyMaze = 'any-maze' in product.name | lower %}
<main class="productPage mt-5 mt-lg-5 mt-md-5">
{% include 'Components/info-message.html.twig' with {message: 'alert.no.quantity' | trans, show: false, color: 'text-ice', icon: 'info.svg' } %}
<div class="container mt-3 mt-lg-3 mt-md-3 mb-5 mb-lg-5 mb-md-5">
<div class="row">
<!-- * Desktop version-->
<div class="product-breadcrumb-heading d-none d-md-block col-lg-12 border-2 border-bottom border-indigo custom-bradcrumb-padding-product" style="margin-top: -4px;">
<div class="d-flex align-items-center flex-wrap">
<h2 class="font-weight-bold mb-0" style="max-width: 60%;">{{ product.name }}</h2>
<div class="d-flex ml-auto breadcrumb-links">
<small class="font-weight-bold text-uppercase mb-0">
<div class="d-flex align-items-center flex-wrap">
<a href="{{ breadcrumbs.parentCategory is defined ? breadcrumbs.parentCategory.href }}" class="font-weight-bold">
<span class="">{% if breadcrumbs.parentCategory is defined %}{{ breadcrumbs.parentCategory.name }}{% endif %}</span>
</a>
<svg class="mx-2 mx-lg-2 mx-md-2" width="11" height="16" viewBox="0 0 11 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<line y1="-1" x2="11.7434" y2="-1" transform="matrix(-0.733639 0.679539 0.733639 0.679539 10.6155 8.02002)" stroke="#405CCA" stroke-width="2"/>
<line y1="-1" x2="11.7434" y2="-1" transform="matrix(-0.733639 -0.679539 0.733639 -0.679539 10.6155 7.98004)" stroke="#405CCA" stroke-width="2"/>
</svg>
<a href="{{ breadcrumbs.category.href }}" class="font-weight-bold">
<span class="text-navyBlue">{{ breadcrumbs.category.name }}</span>
</a>
</div>
</small>
</div>
</div>
</div>
<!-- * Mobile version-->
<div class="d-block d-md-none col-lg-12 pb-3 pb-lg-3 pb-md-3">
<div class="d-flex align-items-center flex-wrap">
<div class="d-flex breadcrumb-links">
<small class="font-weight-bold text-uppercase">
<div class="d-flex align-items-center flex-wrap">
<a href="{{ breadcrumbs.parentCategory is defined ? breadcrumbs.parentCategory.href }}" class="font-weight-bold">
<span class="">{% if breadcrumbs.parentCategory is defined %}{{ breadcrumbs.parentCategory.name }}{% endif %}</span>
</a>
<svg class="mx-2 mx-lg-2 mx-md-2" width="11" height="16" viewBox="0 0 11 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<line y1="-1" x2="11.7434" y2="-1" transform="matrix(-0.733639 0.679539 0.733639 0.679539 10.6155 8.02002)" stroke="#405CCA" stroke-width="2"/>
<line y1="-1" x2="11.7434" y2="-1" transform="matrix(-0.733639 -0.679539 0.733639 -0.679539 10.6155 7.98004)" stroke="#405CCA" stroke-width="2"/>
</svg>
<a href="{{ breadcrumbs.category.href }}" class="font-weight-bold">
<span class="text-navyBlue">{{ breadcrumbs.category.name }}</span>
</a>
</div>
</small>
</div>
</div>
</div>
</div>
<!--*PRODUCT GALLERY AND DATA-->
<div class="row mt-4 mt-lg-4 mt-md-4">
<div class="col-xl-5 offset-xl-1 col-lg-6">
<div class="d-flex justify-content-md-center flex-sm-column flex-md-row main-gallery main-gallery-initial">
<div class="d-none d-md-block product-images-scroll order-sm-2 order-md-1">
<button class="product-images-scroll-btn product-images-scroll-btn--up d-none">
</button>
<div class="d-flex flex-sm-row flex-md-column product-images-scroll-inside product-images-scroll-inside--desktop">
{% for index, variantsImage in variants %}
{% if variantsImage.image != null %}
<div data-product-gallery-index="{{ loop.index }}"
data-product-sku="{{ variantsImage.sku }}"
href="{{ variantsImage.image != null ? variantsImage.image.getThumbnail('Stoelting_gallery_small') }}"
class="product-small-image mb-2 mb-lg-2 mb-md-2">
<img src="{{ variantsImage.image != null ? variantsImage.image.getThumbnail('Stoelting_gallery_small') }}"
alt="Product small image" class="img-fluid">
</div>
{% endif %}
{% endfor %}
</div>
<button class="product-images-scroll-btn product-images-scroll-btn--down d-none">
</button>
</div>
<!-- * Mobile -->
<div class="product-images-scroll--mobile-wrapper d-block d-md-none order-sm-2 order-md-1 position-relative">
<button class="product-images-scroll-btn product-images-scroll-btn--up d-none">
</button>
<div class="product-images-scroll product-images-scroll--mobile">
<div class="d-flex flex-sm-row flex-md-column product-images-scroll-inside product-images-scroll-inside--mobile">
{% for index, variantsImage in variants %}
{% if variantsImage.image != null %}
<div data-product-gallery-index="{{ loop.index }}"
data-product-sku="{{ variantsImage.sku }}"
href="{{ variantsImage.image != null ? variantsImage.image.getThumbnail('Stoelting_gallery_small') }}"
class="product-small-image mb-2 mb-lg-2 mb-md-2">
<img src="{{ variantsImage.image != null ? variantsImage.image.getThumbnail('Stoelting_gallery_small') }}"
alt="Product small image" class="img-fluid">
</div>
{% endif %}
{% endfor %}
</div>
</div>
<button class="product-images-scroll-btn product-images-scroll-btn--down d-none">
</button>
</div>
<div class="d-none hidden-gallery-images">
{% for variantsImage in variants %}
{% if variantsImage.image != null %}
<div data-product-gallery-index="{{ loop.index }}" data-fancybox="gallery" href="{{ variantsImage.image.getThumbnail('Stoelting_gallery_main') }}" class="lazyload product-small-image mb-2 mb-lg-2 mb-md-2">
<img data-src="{{ variantsImage.image.getThumbnail('Stoelting_gallery_main') }}" alt="Product small image">
</div>
{% endif %}
{% endfor %}
</div>
<div class="product-big-image order-sm-1 order-md-2">
{% set break = false %}
{% for variantsImage in variants %}
{% if not break %}
{% if variantsImage.image != null %}
<img class="product-big__image lazyload"
data-src="{{variantsImage.image != null ? variantsImage.image.getThumbnail('Stoelting_gallery_main') }}"
alt="Product big image"
data-fancybox-trigger="gallery"
data-fancybox-index="0"
>
<div class="set-center">
<div class="spinner-border d-none text-secondary" role="status">
<span class="sr-only">Loading...</span>
</div>
</div>
<div class="product-big-image__sku">
<small>
ITEM: {{ ' ' ~ variantsImage.sku != null ? variantsImage.sku }}
</small>
</div>
{% set break = true %}
{% endif %}
{% endif %}
{% endfor %}
</div>
</div>
<h2 class="d-block d-md-none font-weight-bold mt-3 mt-lg-3 mt-md-3">{{ product.name }}</h2>
<div class="mt-4 mt-lg-4 mt-md-4 text-deepGray"> {{ product.shortDescription | raw}} </div>
</div>
<div class="col-xl-5 col-lg-6">
<div id="add-to-cart-app">
<add-to-cart-wrapper v-slot:default="{productId, addToCartBulk,updateProductsList}">
<table style="width: 100%" class="product-table text-deepGray">
<tbody>
<tr>
<th class="font-weight-bold">
{{ 'Item' | trans }}
</th>
<th class="font-weight-bold">
{{ 'Description' | trans }}
</th>
<th class="font-weight-bold">
{{ 'Price' | trans }}
</th>
<th class="font-weight-bold">
{{ 'QTY' | trans }}
</th>
</tr>
{% for variant in variants %}
<tr class="product-table-tr">
<td>
{{ variant.sku }}
</td>
<td>
{{ variant.name | raw }}
</td>
<td>
{% if variant.isPriceVisible %}
{{ variant.price.net_price_str }}
{% else %}
<a href="{{ path('login', {'division': division, '_target_path' : app.request.requestUri}) }}" class="login-price-link"
data-gtm-event="login-price-click">Login</a>
{% endif %}
</td>
<td>
<input type="number" class="qunatity-input" value="0" min="0" max="100" style="width: 50px;" @change="updateProductsList($event, {{ variant.id }})">
</td>
</tr>
{% endfor %}
</tbody>
</table>
<div class="d-flex align-items-center mt-4 mt-lg-4 mt-md-4 add-to-cart-buttons-wrapper">
{% if not isEU %}
<a href="javascript:;"
:data-origin-product-id="productId"
:data-product-id="productId"
@click.prevent="addToCartBulk"
class="btn btn-primary btn-add-to-cart mr-3 mr-lg-3 mr-md-3 text-nowrap add-to-cart-click-element"
data-gtm-event="add-to-cart-click"
>
<div class="d-flex align-items-center text-nowrap">
<img src="{{ asset('/static/images/icons/icon_cart.svg') }}" alt="Icon cart">
{{ 'Add to cart' | trans }}
</div>
</a>
{% endif %}
<a href="javascript:;"
:data-origin-product-id="productId"
:data-product-id="productId"
@click.prevent="addToCartBulk"
class="btn btn-primary btn-add-to-cart mr-3 mr-lg-3 mr-md-3 text-nowrap add-to-quote-click-element"
data-gtm-event="add-to-quote-click"
>
<div class="d-flex align-items-center text-nowrap">
{{ 'Add to Quote' | trans }}
</div>
</a>
</div>
</add-to-cart-wrapper>
</div>
</div>
</div>
<!--Related PRODUCTS-->
<div class="my-4 my-lg-4 my-md-4 related-products">
<div class="row border-top border-bottom border-2 border-lightGray {{ relatedProducts | length ? '' : 'd-none' }}">
<div class="col-xl-10 offset-xl-1 py-4 py-lg-4 py-md-4">
<div class="d-flex align-items-center">
<h3 class="font-weight-light text-navyBlue mb-0">{{ 'Related Products + Recommendations' | trans }}</h3>
<a class="collapse-close ml-auto" data-toggle="collapse" href="#collapseExample1" role="button" aria-expanded="false" aria-controls="collapseExample">
</a>
</div>
<div class="row show" id="collapseExample1">
<div class="col-lg-12">
<div class="slider-small--first mt-3 mt-lg-3 mt-md-3" data-slick='{"slidesToShow": 5}'>
{% for i,relatedProduct in relatedProducts %}
<a href="{{ relatedProduct.href }}" class="slider-small-item d-flex flex-column align-items-center text-center">
<img class="img-fluid" src="{{ relatedProduct.image != null ? relatedProduct.image.getThumbnail('Stoelting_small_slider') : pimcore_website_config('defaultProductImage').getThumbnail('Stoelting_small_slider') }}" />
<h5 class="font-weight-bold mt-3 mt-lg-3 mt-md-3 mb-0">{{ relatedProduct.name }}</h5>
</a>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
<div class="row border-bottom border-2 border-lightGray {{ purchasedTogether | length ? '' : 'd-none' }}">
<div class="col-xl-10 offset-xl-1 py-4 py-lg-4 py-md-4">
<div class="d-flex align-items-center">
<h3 class="font-weight-light text-navyBlue mb-0">{{ 'Frequently Purchased Together' | trans }}</h3>
<a class="collapse-close ml-auto collapsed" data-toggle="collapse" href="#collapseExample2" role="button" aria-expanded="false" aria-controls="collapseExample">
</a>
</div>
<div class="row collapse" id="collapseExample2">
<div class="col-lg-12">
<div class="slider-small mt-3 mt-lg-3 mt-md-3" data-slick='{"slidesToShow": 5}'>
{% for purchasedTogetherProduct in purchasedTogether %}
<a href="{{ purchasedTogetherProduct.href }}" class="d-flex flex-column align-items-center text-center">
<img class="img-fluid" src="{{ purchasedTogetherProduct.image != null ? purchasedTogetherProduct.image.getThumbnail('Stoelting_small_slider') : pimcore_website_config('defaultProductImage').getThumbnail('Stoelting_small_slider') }}" />
<h5 class="font-weight-bold mt-3 mt-lg-3 mt-md-3 mb-0">{{ purchasedTogetherProduct.name }}</h5>
</a>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
<div class="row border-bottom border-2 border-lightGray {{ replacementParts | length ? '' : 'd-none' }}">
<div class="col-xl-10 offset-xl-1 py-4 py-lg-4 py-md-4">
<div class="d-flex align-items-center">
<h3 class="font-weight-light text-navyBlue mb-0">{{ 'Replacement Parts + Subcomponents' | trans }}</h3>
<a class="collapse-close ml-auto collapsed" data-toggle="collapse" href="#collapseExample3" role="button" aria-expanded="false" aria-controls="collapseExample">
</a>
</div>
<div class="row collapse" id="collapseExample3">
<div class="col-lg-12">
<div class="slider-small mt-3 mt-lg-3 mt-md-3" data-slick='{"slidesToShow": 5}'>
{% for replacementPartsProduct in replacementParts %}
<a href="{{ replacementPartsProduct.href }}" class="d-flex flex-column align-items-center text-center">
<img class="img-fluid" src="{{ replacementPartsProduct.image != null ? replacementPartsProduct.image.getThumbnail('Stoelting_small_slider') : pimcore_website_config('defaultProductImage').getThumbnail('Stoelting_small_slider') }}" />
<h5 class="font-weight-bold mt-3 mt-lg-3 mt-md-3 mb-0">{{ replacementPartsProduct.name }}</h5>
</a>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
</div>
<!--Product more details-->
<div class="row my-5 my-lg-5 my-md-5">
<div class="col-lg-10 offset-xl-1" style="min-height: 300px;">
<div class="d-flex">
<div class="accordion" id="accordionProductMoreInfo" style="width: 100%;">
{% set firstLoop = true %}
{% for additionalContentButton in product.additionalContent %}
{% if additionalContentButton.type == 'AditionalContentText' %}
<button class="btn btn-lg btn-secondary btn-secondary--ghost mr-3 mr-lg-3 mr-md-3 mt-2 mt-lg-2 mt-md-2" type="button"
data-toggle="collapse" data-target="#collapse{{ loop.index }}"
aria-expanded="{{ loop.index == 1 ? 'true' : 'false'}}" aria-controls="collapse{{ loop.index }}"
>
{{ additionalContentButton.name }}
</button>
{% set firstLoop = false %}
{% endif %}
{% endfor %}
{% for additionalContent in product.additionalContent %}
{% if additionalContent.type == 'AditionalContentText' %}
<div id="collapse{{ loop.index }}" class="{{ loop.index != 1 ? 'collapse' : 'show' }} list-bullet overflow-x-auto" aria-labelledby="collapse{{ loop.index }}" data-parent="#accordionProductMoreInfo">
<div class="mt-4 mt-lg-4 mt-md-4 text-deepGray">
{{ additionalContent.content | raw }}
</div>
</div>
{% endif %}
{% endfor %}
</div>
</div>
</div>
</div>
</div>
</main>
{% endblock %}
{% block afterScripts %}
<script src="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.js"></script>
<script type="text/javascript" src="https://cdn.rawgit.com/igorlino/elevatezoom-plus/1.1.6/src/jquery.ez-plus.js"></script>
{% endblock %}