<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\CoreExtension;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
use Twig\TemplateWrapper;
/* pages/product/get_detail.html.twig */
class __TwigTemplate_a036afd2f019ede9ab963721d351c017 extends Template
{
private Source $source;
/**
* @var array<string, Template>
*/
private array $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'gtmDataLayer' => [$this, 'block_gtmDataLayer'],
'meta' => [$this, 'block_meta'],
'openGraph' => [$this, 'block_openGraph'],
'structuredData' => [$this, 'block_structuredData'],
'title' => [$this, 'block_title'],
'stylesheets' => [$this, 'block_stylesheets'],
'econdaTracing' => [$this, 'block_econdaTracing'],
'breadcrumb' => [$this, 'block_breadcrumb'],
'content' => [$this, 'block_content'],
'productHeadline' => [$this, 'block_productHeadline'],
'productSku' => [$this, 'block_productSku'],
'productFeedback' => [$this, 'block_productFeedback'],
'buyBox' => [$this, 'block_buyBox'],
'buyBoxActions' => [$this, 'block_buyBoxActions'],
'econdaSlider' => [$this, 'block_econdaSlider'],
'additionalInformation' => [$this, 'block_additionalInformation'],
'tenderText' => [$this, 'block_tenderText'],
'compare' => [$this, 'block_compare'],
'slot_center' => [$this, 'block_slot_center'],
'extraProductListing' => [$this, 'block_extraProductListing'],
'accessoriesProductsSlider' => [$this, 'block_accessoriesProductsSlider'],
'feedback' => [$this, 'block_feedback'],
'offcanvasCart' => [$this, 'block_offcanvasCart'],
'modal' => [$this, 'block_modal'],
'javascripts' => [$this, 'block_javascripts'],
];
}
protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
{
// line 1
return "pages/base.html.twig";
}
protected function doDisplay(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
// line 2
$context["page_type_tracking"] = "cp products";
// line 3
if (CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "attributes", [], "any", false, true, false, 3), "centAmountGross", [], "any", true, true, false, 3)) {
// line 4
$context["currentPrice"] = ((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "attributes", [], "any", true, true, false, 4)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 4, $this->source); })()), "attributes", [], "any", false, false, false, 4), ["centAmountGross" => 0])) : (["centAmountGross" => 0]));
} else {
// line 6
$context["currentPrice"] = ["centAmountGross" => 0];
}
// line 1
$this->parent = $this->load("pages/base.html.twig", 1);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 8
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_gtmDataLayer(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "gtmDataLayer"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "gtmDataLayer"));
// line 9
yield " ";
$context["objectId"] = ((((CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "id", [], "any", true, true, false, 9)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 9, $this->source); })()), "id", [], "any", false, false, false, 9))) : ("")) . ".") . ((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "id", [], "any", true, true, false, 9)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 9, $this->source); })()), "id", [], "any", false, false, false, 9))) : ("")));
// line 10
yield " ";
yield from $this->load("components/atoms/gtm-data-layer/gtm-data-layer.html.twig", 10)->unwrap()->yield(CoreExtension::merge($context, ["product_id" => ((CoreExtension::getAttribute($this->env, $this->source, // line 11
($context["variant"] ?? null), "displaySku", [], "any", true, true, false, 11)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 11, $this->source); })()), "displaySku", [], "any", false, false, false, 11), "")) : ("")), "objectId" => // line 12
(isset($context["objectId"]) || array_key_exists("objectId", $context) ? $context["objectId"] : (function () { throw new RuntimeError('Variable "objectId" does not exist.', 12, $this->source); })()), "product_name" => ((CoreExtension::getAttribute($this->env, $this->source, // line 13
($context["variant"] ?? null), "name", [], "any", true, true, false, 13)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 13, $this->source); })()), "name", [], "any", false, false, false, 13), "")) : ("")), "category" => ((CoreExtension::getAttribute($this->env, $this->source, // line 14
($context["product"] ?? null), "categoryName", [], "any", true, true, false, 14)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 14, $this->source); })()), "categoryName", [], "any", false, false, false, 14), "")) : ("")), "product_price" => Twig\Extension\CoreExtension::default($this->extensions['App\Twig\Filters\PriceExtension']->priceDefaultFormat(CoreExtension::getAttribute($this->env, $this->source, // line 15
(isset($context["currentPrice"]) || array_key_exists("currentPrice", $context) ? $context["currentPrice"] : (function () { throw new RuntimeError('Variable "currentPrice" does not exist.', 15, $this->source); })()), "centAmountGross", [], "any", false, false, false, 15)), ""), "brand" => ((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 16
($context["variant"] ?? null), "structuredData", [], "any", false, true, false, 16), "brand", [], "any", false, true, false, 16), "name", [], "any", false, true, false, 16), "value", [], "any", true, true, false, 16)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 16, $this->source); })()), "structuredData", [], "any", false, false, false, 16), "brand", [], "any", false, false, false, 16), "name", [], "any", false, false, false, 16), "value", [], "any", false, false, false, 16), "")) : ("")), "availability" => (((CoreExtension::getAttribute($this->env, $this->source, // line 17
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 17, $this->source); })()), "salesStatus", [], "any", false, false, false, 17) == "saleable")) ? ("yes") : ("no"))]));
// line 19
yield " <script>
window.dataLayer.push({
'event': 'eec.detail_view',
'ecommerce': {
'detail': {
'actionField': {'list': 'cp products'},
'products': [{
'name': '";
// line 26
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "name", [], "any", true, true, false, 26)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 26, $this->source); })()), "name", [], "any", false, false, false, 26), "")) : ("")), "html", null, true);
yield "',
'id': '";
// line 27
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "displaySku", [], "any", true, true, false, 27)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 27, $this->source); })()), "displaySku", [], "any", false, false, false, 27), "")) : ("")), "html", null, true);
yield "',
'objectId':'";
// line 28
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["objectId"]) || array_key_exists("objectId", $context) ? $context["objectId"] : (function () { throw new RuntimeError('Variable "objectId" does not exist.', 28, $this->source); })()), "html", null, true);
yield "',
'price': '";
// line 29
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['App\Twig\Filters\PriceExtension']->priceDefaultFormat(CoreExtension::getAttribute($this->env, $this->source, (isset($context["currentPrice"]) || array_key_exists("currentPrice", $context) ? $context["currentPrice"] : (function () { throw new RuntimeError('Variable "currentPrice" does not exist.', 29, $this->source); })()), "centAmountGross", [], "any", false, false, false, 29)), "html", null, true);
yield "',
'brand': '";
// line 30
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "structuredData", [], "any", false, true, false, 30), "brand", [], "any", false, true, false, 30), "name", [], "any", false, true, false, 30), "value", [], "any", true, true, false, 30)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 30, $this->source); })()), "structuredData", [], "any", false, false, false, 30), "brand", [], "any", false, false, false, 30), "name", [], "any", false, false, false, 30), "value", [], "any", false, false, false, 30), "")) : ("")), "html", null, true);
yield "',
'category': '";
// line 31
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "categoryName", [], "any", true, true, false, 31)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 31, $this->source); })()), "categoryName", [], "any", false, false, false, 31), "")) : ("")), "html", null, true);
yield "',
}]
}
},
})
</script>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 39
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_meta(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "meta"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "meta"));
// line 40
yield " ";
yield from $this->load("components/organisms/meta/meta.html.twig", 40)->unwrap()->yield(CoreExtension::merge($context, ["metaInformation" => ((CoreExtension::getAttribute($this->env, $this->source, // line 41
($context["variant"] ?? null), "metaInformation", [], "any", true, true, false, 41)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 41, $this->source); })()), "metaInformation", [], "any", false, false, false, 41), null)) : (null)), "fallback" => (CoreExtension::getAttribute($this->env, $this->source, // line 42
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 42, $this->source); })()), "name", [], "any", false, false, false, 42) . $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("meta_description_default"))]));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 46
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_openGraph(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "openGraph"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "openGraph"));
// line 47
yield " ";
yield from $this->load("components/organisms/open-graph/open-graph.html.twig", 47)->unwrap()->yield(CoreExtension::merge($context, ["openGraphInformation" => ((CoreExtension::getAttribute($this->env, $this->source, // line 48
($context["variant"] ?? null), "openGraphInformation", [], "any", true, true, false, 48)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 48, $this->source); })()), "openGraphInformation", [], "any", false, false, false, 48), null)) : (null))]));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 52
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_structuredData(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "structuredData"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "structuredData"));
// line 53
yield " ";
yield from $this->yieldParentBlock("structuredData", $context, $blocks);
yield "
";
// line 54
if (array_key_exists("variantStructuredData", $context)) {
// line 55
yield " ";
yield from $this->load("components/atoms/structured-data/structured-data.html.twig", 55)->unwrap()->yield(CoreExtension::merge($context, ["structuredData" => (( // line 56
array_key_exists("variantStructuredData", $context)) ? (Twig\Extension\CoreExtension::default((isset($context["variantStructuredData"]) || array_key_exists("variantStructuredData", $context) ? $context["variantStructuredData"] : (function () { throw new RuntimeError('Variable "variantStructuredData" does not exist.', 56, $this->source); })()))) : (""))]));
// line 58
yield " ";
}
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 61
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_title(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "name", [], "any", true, true, false, 61)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 61, $this->source); })()), "name", [], "any", false, false, false, 61), CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 61, $this->source); })()), "name", [], "any", false, false, false, 61))) : (CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 61, $this->source); })()), "name", [], "any", false, false, false, 61))), "html", null, true);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 63
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_stylesheets(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
// line 64
yield " ";
yield from $this->yieldParentBlock("stylesheets", $context, $blocks);
yield "
";
// line 66
yield $this->extensions['Symfony\WebpackEncoreBundle\Twig\EntryFilesTwigExtension']->renderWebpackLinkTags("product");
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 68
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_econdaTracing(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "econdaTracing"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "econdaTracing"));
// line 69
yield " ";
yield from $this->load("components/atoms/econda-tracking/econda-tracking.html.twig", 69)->unwrap()->yield(CoreExtension::merge($context, ["page_type_tracking" => // line 70
(isset($context["page_type_tracking"]) || array_key_exists("page_type_tracking", $context) ? $context["page_type_tracking"] : (function () { throw new RuntimeError('Variable "page_type_tracking" does not exist.', 70, $this->source); })()), "econdaSend" => ["ec_Event" => [["type" => "view", "pid" => ((CoreExtension::getAttribute($this->env, $this->source, // line 75
($context["variant"] ?? null), "displaySku", [], "any", true, true, false, 75)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 75, $this->source); })()), "displaySku", [], "any", false, false, false, 75), "")) : ("")), "sku" => ((CoreExtension::getAttribute($this->env, $this->source, // line 76
($context["variant"] ?? null), "displaySku", [], "any", true, true, false, 76)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 76, $this->source); })()), "displaySku", [], "any", false, false, false, 76), "")) : ("")), "name" => ((CoreExtension::getAttribute($this->env, $this->source, // line 77
($context["variant"] ?? null), "name", [], "any", true, true, false, 77)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 77, $this->source); })()), "name", [], "any", false, false, false, 77), "")) : ("")), "price" => $this->extensions['App\Twig\Filters\PriceExtension']->priceDefaultFormat(CoreExtension::getAttribute($this->env, $this->source, // line 78
(isset($context["currentPrice"]) || array_key_exists("currentPrice", $context) ? $context["currentPrice"] : (function () { throw new RuntimeError('Variable "currentPrice" does not exist.', 78, $this->source); })()), "centAmountGross", [], "any", false, false, false, 78)), "group" => CoreExtension::getAttribute($this->env, $this->source, // line 79
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 79, $this->source); })()), "categoryName", [], "any", false, false, false, 79), "count" => 1, "var1" => null, "var2" => null, "var3" => null]]]]));
// line 88
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 90
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_breadcrumb(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "breadcrumb"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "breadcrumb"));
// line 91
yield " ";
yield from $this->load("components/molecules/breadcrumb/breadcrumb.html.twig", 91)->unwrap()->yield(CoreExtension::merge($context, ["page" => "detail", "backOffset" => -1, "showBackAlways" => true]));
// line 96
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 99
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_content(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
// line 100
yield " <div class=\"product-detail\">
<div class=\"product-detail__data\">
<div class=\"product-detail__header\">
<div class=\"product-detail__headline\">
";
// line 104
yield from $this->unwrap()->yieldBlock('productHeadline', $context, $blocks);
// line 111
yield "
";
// line 112
yield from $this->unwrap()->yieldBlock('productSku', $context, $blocks);
// line 117
yield " ";
yield from $this->unwrap()->yieldBlock('productFeedback', $context, $blocks);
// line 122
yield " </div>
<div class=\"product-detail__image\">
";
// line 126
yield from $this->load("components/organisms/pdp-gallery/pdp-gallery.html.twig", 126)->unwrap()->yield($context);
// line 127
yield " </div>
<div class=\"product-detail__description\">
";
// line 129
$context["accessoriesSkus"] = $this->extensions['App\Twig\Functions\CrossSellExtension']->getCrossSellSkus((isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 129, $this->source); })()), Twig\Extension\CoreExtension::constant("App\\Twig\\Functions\\CrossSellExtension::ACCESSORY"));
// line 130
yield " ";
$context["sparepartSkus"] = $this->extensions['App\Twig\Functions\CrossSellExtension']->getCrossSellSkus((isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 130, $this->source); })()), Twig\Extension\CoreExtension::constant("App\\Twig\\Functions\\CrossSellExtension::SPAREPART"));
// line 131
yield " ";
$context["mainSkus"] = $this->extensions['App\Twig\Functions\CrossSellExtension']->getCrossSellSkus((isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 131, $this->source); })()), Twig\Extension\CoreExtension::constant("App\\Twig\\Functions\\CrossSellExtension::MAIN"));
// line 132
yield " ";
$context["serviceSkus"] = $this->extensions['App\Twig\Functions\CrossSellExtension']->getCrossSellSkus((isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 132, $this->source); })()), Twig\Extension\CoreExtension::constant("App\\Twig\\Functions\\CrossSellExtension::SERVICE"));
// line 133
yield "
";
// line 134
$context["productLinks"] = Twig\Extension\CoreExtension::filter($this->env, [["slug" => "#product_information", "name" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("product_information"), "active" => true, "gtm" => "data-gtm-cp-pdp-go-to"], ["slug" => "#serviceProductsSlider", "name" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("product_service"), "active" => (Twig\Extension\CoreExtension::length($this->env->getCharset(), // line 139
(isset($context["serviceSkus"]) || array_key_exists("serviceSkus", $context) ? $context["serviceSkus"] : (function () { throw new RuntimeError('Variable "serviceSkus" does not exist.', 139, $this->source); })())) > 0), "gtm" => "data-gtm-cp-pdp-go-to"], ["slug" => "#product-compare", "name" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("compare_products"), "active" => (CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 145
($context["variant"] ?? null), "attributes", [], "any", false, true, false, 145), "comparable_articles", [], "any", true, true, false, 145) && !Twig\Extension\CoreExtension::testEmpty(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 145, $this->source); })()), "attributes", [], "any", false, false, false, 145), "comparable_articles", [], "any", false, false, false, 145))), "gtm" => "data-gtm-cp-pdp-go-to"], ["slug" => "#accessoriesProductsSlider", "name" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("accessories_products_slider_headline"), "active" => ((Twig\Extension\CoreExtension::length($this->env->getCharset(), // line 151
(isset($context["accessoriesSkus"]) || array_key_exists("accessoriesSkus", $context) ? $context["accessoriesSkus"] : (function () { throw new RuntimeError('Variable "accessoriesSkus" does not exist.', 151, $this->source); })())) > 0) || (Twig\Extension\CoreExtension::length($this->env->getCharset(), (isset($context["sparepartSkus"]) || array_key_exists("sparepartSkus", $context) ? $context["sparepartSkus"] : (function () { throw new RuntimeError('Variable "sparepartSkus" does not exist.', 151, $this->source); })())) > 0)), "gtm" => "data-gtm-cp-pdp-go-to"]], // line 154
function ($__v__) use ($context, $macros) { $context["v"] = $__v__; return CoreExtension::getAttribute($this->env, $this->source, (isset($context["v"]) || array_key_exists("v", $context) ? $context["v"] : (function () { throw new RuntimeError('Variable "v" does not exist.', 154, $this->source); })()), "active", [], "any", false, false, false, 154); });
// line 155
yield "
";
// line 157
yield from $this->load("components/organisms/product-description/product-description.html.twig", 157)->unwrap()->yield(CoreExtension::merge($context, ["product" => // line 158
(isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 158, $this->source); })()), "variant" => // line 159
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 159, $this->source); })())]));
// line 161
yield "
";
// line 162
if ((Twig\Extension\CoreExtension::length($this->env->getCharset(), (isset($context["productLinks"]) || array_key_exists("productLinks", $context) ? $context["productLinks"] : (function () { throw new RuntimeError('Variable "productLinks" does not exist.', 162, $this->source); })())) > 0)) {
// line 163
yield " <div class=\"product-detail__actions\">
";
// line 165
yield from $this->load("components/molecules/link-list/link-list.html.twig", 165)->unwrap()->yield(CoreExtension::merge($context, ["entries" => // line 166
(isset($context["productLinks"]) || array_key_exists("productLinks", $context) ? $context["productLinks"] : (function () { throw new RuntimeError('Variable "productLinks" does not exist.', 166, $this->source); })()), "class" => "link-list--pdp", "classLink" => "text-link--arrow-left"]));
// line 170
yield " </div>
";
}
// line 172
yield "
";
// line 173
if ((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "ghsImages", [], "any", true, true, false, 173) && !Twig\Extension\CoreExtension::testEmpty(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 173, $this->source); })()), "ghsImages", [], "any", false, false, false, 173)))) {
// line 174
yield " <div class=\"product-detail__icons\">
<div class=\"js-icon-image-gallery product-detail__icons-slider icon-slider\">
<div class=\"swiper-wrapper\">
";
// line 177
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 177, $this->source); })()), "ghsImages", [], "any", false, false, false, 177));
foreach ($context['_seq'] as $context["_key"] => $context["icon"]) {
// line 178
yield " <div class=\"swiper-slide\">
<img height=\"40\" src=\"";
// line 179
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, $context["icon"], "uri", [], "any", true, true, false, 179)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, $context["icon"], "uri", [], "any", false, false, false, 179))) : ("")), "html", null, true);
yield "\" alt=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, $context["icon"], "text", [], "any", true, true, false, 179)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, $context["icon"], "text", [], "any", false, false, false, 179))) : ("")), "html", null, true);
yield "\">
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_key'], $context['icon'], $context['_parent']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 182
yield " </div>
<div class=\"icon-slider__prev swiper-button-prev\" aria-hidden=\"true\"></div>
<div class=\"icon-slider__next swiper-button-next\" aria-hidden=\"true\"></div>
</div>
</div>
";
}
// line 188
yield " </div>
</div>
<div class=\"product-detail__sidebar\">
<div class=\"product-detail__variant-anchor\" id=\"buy-box__variant-selection\"></div>
";
// line 192
yield from $this->load("components/organisms/variant-selection/variant-selection.html.twig", 192)->unwrap()->yield(CoreExtension::merge($context, ["product" => // line 193
(isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 193, $this->source); })()), "variant" => // line 194
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 194, $this->source); })())]));
// line 196
yield " <div class=\"product-detail__sticky-box\">
";
// line 197
yield from $this->unwrap()->yieldBlock('buyBox', $context, $blocks);
// line 209
yield " ";
if (array_key_exists("slot_pdp_sidebar_default", $context)) {
// line 210
yield " ";
yield from $this->load("components/organisms/storyblok/storyblok.html.twig", 210)->unwrap()->yield(CoreExtension::merge($context, ["componentData" => // line 211
(isset($context["slot_pdp_sidebar_default"]) || array_key_exists("slot_pdp_sidebar_default", $context) ? $context["slot_pdp_sidebar_default"] : (function () { throw new RuntimeError('Variable "slot_pdp_sidebar_default" does not exist.', 211, $this->source); })()), "componentConfig" => ["contact-box" => ["modifier" => "detail js-cms-contact-box"]]]));
// line 218
yield " ";
}
// line 219
yield " ";
if (array_key_exists("slot_pdp_sidebar", $context)) {
// line 220
yield " ";
yield from $this->load("components/organisms/storyblok/storyblok.html.twig", 220)->unwrap()->yield(CoreExtension::merge($context, ["componentData" => // line 221
(isset($context["slot_pdp_sidebar"]) || array_key_exists("slot_pdp_sidebar", $context) ? $context["slot_pdp_sidebar"] : (function () { throw new RuntimeError('Variable "slot_pdp_sidebar" does not exist.', 221, $this->source); })()), "componentConfig" => ["contact-box" => ["modifier" => "detail js-cms-contact-box"]]]));
// line 228
yield " ";
}
// line 229
yield " </div>
</div>
<div class=\"product-detail__info\">
";
// line 232
if ((($tmp = !(isset($context["isPunchout"]) || array_key_exists("isPunchout", $context) ? $context["isPunchout"] : (function () { throw new RuntimeError('Variable "isPunchout" does not exist.', 232, $this->source); })())) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
// line 233
yield " ";
yield from $this->unwrap()->yieldBlock('econdaSlider', $context, $blocks);
// line 271
yield " ";
}
// line 272
yield " ";
yield from $this->unwrap()->yieldBlock('additionalInformation', $context, $blocks);
// line 304
yield "
";
// line 305
yield from $this->unwrap()->yieldBlock('tenderText', $context, $blocks);
// line 307
yield "
";
// line 308
yield from $this->unwrap()->yieldBlock('compare', $context, $blocks);
// line 317
yield " ";
yield from $this->unwrap()->yieldBlock('slot_center', $context, $blocks);
// line 327
yield "
";
// line 328
yield from $this->unwrap()->yieldBlock('extraProductListing', $context, $blocks);
// line 366
yield "
";
// line 367
yield from $this->unwrap()->yieldBlock('accessoriesProductsSlider', $context, $blocks);
// line 389
yield "
";
// line 390
yield from $this->unwrap()->yieldBlock('feedback', $context, $blocks);
// line 408
yield " </div>
<div class=\"product-detail__mobile-buy-box\">
";
// line 410
yield from $this->load("components/organisms/buy-box/small-mobile-buy-box.html.twig", 410)->unwrap()->yield(CoreExtension::merge($context, ["product" => // line 411
(isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 411, $this->source); })()), "variant" => // line 412
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 412, $this->source); })()), "structuredProducts" => // line 413
(isset($context["structuredProducts"]) || array_key_exists("structuredProducts", $context) ? $context["structuredProducts"] : (function () { throw new RuntimeError('Variable "structuredProducts" does not exist.', 413, $this->source); })()), "class" => "buy-box--mobile"]));
// line 416
yield "
</div>
</div>
<div class=\"product-detail__cms-bottom\">
";
// line 420
if (array_key_exists("slot_pdp_bottom", $context)) {
// line 421
yield " <div class=\"spacing spacing--50\"></div>
";
// line 422
yield from $this->load("components/organisms/storyblok/storyblok.html.twig", 422)->unwrap()->yield(CoreExtension::merge($context, ["componentData" => // line 423
(isset($context["slot_pdp_bottom"]) || array_key_exists("slot_pdp_bottom", $context) ? $context["slot_pdp_bottom"] : (function () { throw new RuntimeError('Variable "slot_pdp_bottom" does not exist.', 423, $this->source); })())]));
// line 425
yield " ";
} else {
// line 426
yield " <div class=\"spacing spacing--50\"></div>
";
// line 427
yield from $this->load("components/organisms/last-seen-product-slider/last-seen-product-slider.html.twig", 427)->unwrap()->yield(CoreExtension::merge($context, ["headline" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("recently_viewed"), "headlineTag" => "h2", "additionalClass" => "product-detail__last-seen"]));
// line 432
yield " ";
}
// line 433
yield " </div>
</div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 104
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_productHeadline(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "productHeadline"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "productHeadline"));
// line 105
yield " ";
yield from $this->load("components/atoms/headline/headline.html.twig", 105)->unwrap()->yield(CoreExtension::merge($context, ["headlineTag" => "h1", "text" => CoreExtension::getAttribute($this->env, $this->source, // line 107
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 107, $this->source); })()), "name", [], "any", false, false, false, 107), "class" => "product-description__headline"]));
// line 110
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 112
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_productSku(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "productSku"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "productSku"));
// line 113
yield " <p class=\"product-description__sku\">
";
// line 114
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("product_sku"), "html", null, true);
yield ": ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 114, $this->source); })()), "displaySku", [], "any", false, false, false, 114), "html", null, true);
yield "
</p>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 117
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_productFeedback(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "productFeedback"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "productFeedback"));
// line 118
yield " <div class=\"etrusted--product-stars\" >
<etrusted-product-review-list-widget-product-star-extension></etrusted-product-review-list-widget-product-star-extension>
</div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 197
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_buyBox(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "buyBox"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "buyBox"));
// line 198
yield " ";
yield from $this->load("components/organisms/buy-box/buy-box.html.twig", 198)->unwrap()->yield(CoreExtension::merge($context, ["product" => // line 199
(isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 199, $this->source); })()), "variant" => // line 200
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 200, $this->source); })()), "structuredProducts" => // line 201
(isset($context["structuredProducts"]) || array_key_exists("structuredProducts", $context) ? $context["structuredProducts"] : (function () { throw new RuntimeError('Variable "structuredProducts" does not exist.', 201, $this->source); })())]));
// line 203
yield " ";
yield from $this->unwrap()->yieldBlock('buyBoxActions', $context, $blocks);
// line 208
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 203
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_buyBoxActions(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "buyBoxActions"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "buyBoxActions"));
// line 204
yield " <div class=\"buy-box__actions\">
";
// line 205
yield from $this->load("components/molecules/icon-links-actions/icon-links-actions.html.twig", 205)->unwrap()->yield($context);
// line 206
yield " </div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 233
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_econdaSlider(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "econdaSlider"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "econdaSlider"));
// line 234
yield " <div class=\"spacing spacing--30\"></div>
<div class=\"product-detail__econda-div\">
<div class=\"product-detail__econda-slider\" id=\"econdaProductsSlider\">
";
// line 238
$context["econdaWidgets"] = [["id" => "econda_1", "widgetId" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("econda_product_widget_id"), "headline" => ["text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("similar_products_slider_headline")], "component" => ""], ["id" => "econda_2", "widgetId" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("econda_product_buy_together_widget_id"), "headline" => ["text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("purchased_together_products_slider_headline")], "component" => ""]];
// line 255
yield " ";
yield from $this->load("pages/product/get_detail.html.twig", 255, "775155179")->unwrap()->yield(CoreExtension::merge($context, ["entries" => // line 256
(isset($context["econdaWidgets"]) || array_key_exists("econdaWidgets", $context) ? $context["econdaWidgets"] : (function () { throw new RuntimeError('Variable "econdaWidgets" does not exist.', 256, $this->source); })())]));
// line 268
yield " </div>
</div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 272
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_additionalInformation(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "additionalInformation"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "additionalInformation"));
// line 273
yield " <div class=\"spacing spacing--30\"></div>
";
// line 274
yield from $this->load("pages/product/data-tabs.html.twig", 274)->unwrap()->yield($context);
// line 275
yield " ";
if ((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "links", [], "any", false, true, false, 275), "epaper", [], "any", true, true, false, 275) && !Twig\Extension\CoreExtension::testEmpty(((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "links", [], "any", false, true, false, 275), "epaper", [], "any", true, true, false, 275)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 275, $this->source); })()), "links", [], "any", false, false, false, 275), "epaper", [], "any", false, false, false, 275))) : (""))))) {
// line 276
yield " ";
yield from $this->load("components/atoms/text-link/text-link.html.twig", 276)->unwrap()->yield(CoreExtension::merge($context, ["class" => "text-link--arrow-right text-link--hide-in-print", "href" => ((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 279
($context["variant"] ?? null), "links", [], "any", false, true, false, 279), "epaper", [], "any", true, true, false, 279)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 279, $this->source); })()), "links", [], "any", false, false, false, 279), "epaper", [], "any", false, false, false, 279))) : ("")), "text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("catalog_page"), "attributes" => ["target" => "_blank"]]));
// line 285
yield " ";
}
// line 286
yield " <div class=\"spacing spacing--10\"></div>
";
// line 287
if (CoreExtension::getAttribute($this->env, $this->source, ($context["cms_globals"] ?? null), "slot_inquiry", [], "any", true, true, false, 287)) {
// line 288
yield " ";
yield from $this->load("pages/product/get_detail.html.twig", 288, "188396788")->unwrap()->yield(CoreExtension::merge($context, ["class" => "text-link js-modal button--arrow-right text-link--arrow-right", "type" => "button", "attributes" => ["data-modal-id" => "inquiry"]]));
// line 301
yield " ";
}
// line 302
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 305
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_tenderText(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "tenderText"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "tenderText"));
// line 306
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 308
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_compare(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "compare"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "compare"));
// line 309
yield " ";
if (CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "attributes", [], "any", false, true, false, 309), "comparable_articles", [], "any", true, true, false, 309)) {
// line 310
yield " <div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
";
// line 311
yield from $this->load("components/organisms/product-compare/product-compare.html.twig", 311)->unwrap()->yield(CoreExtension::merge($context, ["productSku" => CoreExtension::getAttribute($this->env, $this->source, // line 312
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 312, $this->source); })()), "sku", [], "any", false, false, false, 312), "compareSkus" => CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 313
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 313, $this->source); })()), "attributes", [], "any", false, false, false, 313), "comparable_articles", [], "any", false, false, false, 313)]));
// line 315
yield " ";
}
// line 316
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 317
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_slot_center(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "slot_center"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "slot_center"));
// line 318
yield " ";
if (array_key_exists("slot_pdp_center", $context)) {
// line 319
yield " <div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
<div class=\"product-detail__cms-center\">
";
// line 321
yield from $this->load("components/organisms/storyblok/storyblok.html.twig", 321)->unwrap()->yield(CoreExtension::merge($context, ["componentData" => // line 322
(isset($context["slot_pdp_center"]) || array_key_exists("slot_pdp_center", $context) ? $context["slot_pdp_center"] : (function () { throw new RuntimeError('Variable "slot_pdp_center" does not exist.', 322, $this->source); })())]));
// line 324
yield " </div>
";
}
// line 326
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 328
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_extraProductListing(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "extraProductListing"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "extraProductListing"));
// line 329
yield " ";
if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["serviceSkus"]) || array_key_exists("serviceSkus", $context) ? $context["serviceSkus"] : (function () { throw new RuntimeError('Variable "serviceSkus" does not exist.', 329, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
// line 330
yield " <div class=\"spacing spacing--50\"></div>
";
// line 331
yield from $this->load("components/atoms/headline/headline.html.twig", 331)->unwrap()->yield(CoreExtension::merge($context, ["headlineTag" => "h2", "text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("product_service"), "class" => "headline--section", "attributes" => ["id" => "serviceProductsSlider"]]));
// line 339
yield " <div class=\"product-detail__service-products\">
";
// line 340
yield from $this->load("components/organisms/related-products/related-products.html.twig", 340)->unwrap()->yield(CoreExtension::merge($context, ["class" => "", "skus" => // line 342
(isset($context["serviceSkus"]) || array_key_exists("serviceSkus", $context) ? $context["serviceSkus"] : (function () { throw new RuntimeError('Variable "serviceSkus" does not exist.', 342, $this->source); })()), "api_url" => $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_get_products"), "current_language" => CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 344
(isset($context["storeContext"]) || array_key_exists("storeContext", $context) ? $context["storeContext"] : (function () { throw new RuntimeError('Variable "storeContext" does not exist.', 344, $this->source); })()), "localeInfo", [], "any", false, false, false, 344), "currentLocale", [], "any", false, false, false, 344)]));
// line 346
yield " </div>
";
}
// line 348
yield "
";
// line 349
if ((($tmp = !Twig\Extension\CoreExtension::testEmpty((isset($context["mainSkus"]) || array_key_exists("mainSkus", $context) ? $context["mainSkus"] : (function () { throw new RuntimeError('Variable "mainSkus" does not exist.', 349, $this->source); })()))) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
// line 350
yield " <div class=\"spacing spacing--50\"></div>
";
// line 351
yield from $this->load("components/atoms/headline/headline.html.twig", 351)->unwrap()->yield(CoreExtension::merge($context, ["headlineTag" => "h2", "text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("main_products"), "class" => "headline--section"]));
// line 356
yield " <div class=\"product-detail__main-products\">
";
// line 357
yield from $this->load("components/organisms/related-products/related-products.html.twig", 357)->unwrap()->yield(CoreExtension::merge($context, ["class" => "", "skus" => // line 359
(isset($context["mainSkus"]) || array_key_exists("mainSkus", $context) ? $context["mainSkus"] : (function () { throw new RuntimeError('Variable "mainSkus" does not exist.', 359, $this->source); })()), "api_url" => $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_get_products"), "current_language" => CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 361
(isset($context["storeContext"]) || array_key_exists("storeContext", $context) ? $context["storeContext"] : (function () { throw new RuntimeError('Variable "storeContext" does not exist.', 361, $this->source); })()), "localeInfo", [], "any", false, false, false, 361), "currentLocale", [], "any", false, false, false, 361)]));
// line 363
yield " </div>
";
}
// line 365
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 367
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_accessoriesProductsSlider(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "accessoriesProductsSlider"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "accessoriesProductsSlider"));
// line 368
yield " ";
if (( !Twig\Extension\CoreExtension::testEmpty((isset($context["sparepartSkus"]) || array_key_exists("sparepartSkus", $context) ? $context["sparepartSkus"] : (function () { throw new RuntimeError('Variable "sparepartSkus" does not exist.', 368, $this->source); })())) || !Twig\Extension\CoreExtension::testEmpty((isset($context["accessoriesSkus"]) || array_key_exists("accessoriesSkus", $context) ? $context["accessoriesSkus"] : (function () { throw new RuntimeError('Variable "accessoriesSkus" does not exist.', 368, $this->source); })())))) {
// line 369
yield " <div class=\"spacing spacing--50\"></div>
";
// line 370
yield from $this->load("components/atoms/headline/headline.html.twig", 370)->unwrap()->yield(CoreExtension::merge($context, ["headlineTag" => "h2", "text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("accessories_products_slider_headline"), "class" => "headline--section", "attributes" => ["id" => "accessoriesProductsSlider"]]));
// line 378
yield " <related-products-tabs
tab-entries=\"";
// line 379
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(json_encode($this->extensions['App\Twig\Functions\CrossSellExtension']->getCrossSellEntries((isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 379, $this->source); })()), [Twig\Extension\CoreExtension::constant("App\\Twig\\Functions\\CrossSellExtension::ACCESSORY"), Twig\Extension\CoreExtension::constant("App\\Twig\\Functions\\CrossSellExtension::SPAREPART")])), "html", null, true);
yield "\"
css-class=\"related-products-tabs\"
image-service=\"";
// line 381
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["imageservice"]) || array_key_exists("imageservice", $context) ? $context["imageservice"] : (function () { throw new RuntimeError('Variable "imageservice" does not exist.', 381, $this->source); })()), "html", null, true);
yield "\"
api-url=\"";
// line 382
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_get_products");
yield "\"
add-product-url=\"";
// line 383
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("checkout_cart_add_line_item");
yield "\"
id=\"pdp-related-products\"
current-language=\"";
// line 385
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["storeContext"]) || array_key_exists("storeContext", $context) ? $context["storeContext"] : (function () { throw new RuntimeError('Variable "storeContext" does not exist.', 385, $this->source); })()), "localeInfo", [], "any", false, false, false, 385), "currentLocale", [], "any", false, false, false, 385), "html", null, true);
yield "\"
product-component-class=\"product-component\"></related-products-tabs>
";
}
// line 388
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 390
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_feedback(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "feedback"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "feedback"));
// line 391
yield " ";
if (( !Twig\Extension\CoreExtension::testEmpty($this->extensions['App\Twig\Filters\CustomEmptyTextFallbackTranslatorExtension']->transFallbackEmptyText("product_feedback_widget_id")) && !(isset($context["isPunchout"]) || array_key_exists("isPunchout", $context) ? $context["isPunchout"] : (function () { throw new RuntimeError('Variable "isPunchout" does not exist.', 391, $this->source); })()))) {
// line 392
yield " <div id=\"feedback\" class=\"product-detail__feedback etrusted-js etrusted--invisible\">
<div class=\"spacing spacing--50\"></div>
";
// line 394
yield from $this->load("components/atoms/headline/headline.html.twig", 394)->unwrap()->yield(CoreExtension::merge($context, ["headlineTag" => "h2", "text" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("customer_reviews"), "class" => "headline--section"]));
// line 399
yield " ";
yield from $this->load("components/atoms/etrusted/etrusted.html.twig", 399)->unwrap()->yield(CoreExtension::merge($context, ["type" => "product", "class" => "etrusted--product-feedback", "sku" => CoreExtension::getAttribute($this->env, $this->source, // line 402
(isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 402, $this->source); })()), "sku", [], "any", false, false, false, 402), "widget_id" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("product_feedback_widget_id")]));
// line 405
yield " </div>
";
}
// line 407
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 436
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_offcanvasCart(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "offcanvasCart"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "offcanvasCart"));
// line 437
yield " ";
yield from $this->load("components/organisms/offcanvas-cart/offcanvas-cart.html.twig", 437)->unwrap()->yield($context);
// line 438
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 440
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_modal(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modal"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modal"));
// line 441
yield " ";
if (CoreExtension::getAttribute($this->env, $this->source, ($context["cms_globals"] ?? null), "slot_inquiry", [], "any", true, true, false, 441)) {
// line 442
yield " ";
yield from $this->load("pages/product/get_detail.html.twig", 442, "2104544243")->unwrap()->yield(CoreExtension::merge($context, ["modalId" => "inquiry"]));
// line 460
yield " ";
}
// line 461
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 464
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_javascripts(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
// line 465
yield " <script>
window.dataStore = window.dataStore || [];
window.dataStore.sku = ";
// line 467
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, ($context["variant"] ?? null), "sku", [], "any", true, true, false, 467)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 467, $this->source); })()), "sku", [], "any", false, false, false, 467), "")) : ("")), "html", null, true);
yield ";
</script>
";
// line 469
yield from $this->yieldParentBlock("javascripts", $context, $blocks);
yield "
";
// line 471
yield $this->extensions['Symfony\WebpackEncoreBundle\Twig\EntryFilesTwigExtension']->renderWebpackScriptTags("product");
yield "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName(): string
{
return "pages/product/get_detail.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable(): bool
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo(): array
{
return array ( 1215 => 471, 1210 => 469, 1205 => 467, 1201 => 465, 1188 => 464, 1176 => 461, 1173 => 460, 1170 => 442, 1167 => 441, 1154 => 440, 1142 => 438, 1139 => 437, 1126 => 436, 1115 => 407, 1111 => 405, 1109 => 402, 1107 => 399, 1105 => 394, 1101 => 392, 1098 => 391, 1085 => 390, 1074 => 388, 1068 => 385, 1063 => 383, 1059 => 382, 1055 => 381, 1050 => 379, 1047 => 378, 1045 => 370, 1042 => 369, 1039 => 368, 1026 => 367, 1015 => 365, 1011 => 363, 1009 => 361, 1008 => 359, 1007 => 357, 1004 => 356, 1002 => 351, 999 => 350, 997 => 349, 994 => 348, 990 => 346, 988 => 344, 987 => 342, 986 => 340, 983 => 339, 981 => 331, 978 => 330, 975 => 329, 962 => 328, 951 => 326, 947 => 324, 945 => 322, 944 => 321, 940 => 319, 937 => 318, 924 => 317, 913 => 316, 910 => 315, 908 => 313, 907 => 312, 906 => 311, 903 => 310, 900 => 309, 887 => 308, 876 => 306, 863 => 305, 851 => 302, 848 => 301, 845 => 288, 843 => 287, 840 => 286, 837 => 285, 835 => 279, 833 => 276, 830 => 275, 828 => 274, 825 => 273, 812 => 272, 799 => 268, 797 => 256, 795 => 255, 793 => 238, 787 => 234, 774 => 233, 762 => 206, 760 => 205, 757 => 204, 744 => 203, 733 => 208, 730 => 203, 728 => 201, 727 => 200, 726 => 199, 724 => 198, 711 => 197, 697 => 118, 684 => 117, 668 => 114, 665 => 113, 652 => 112, 641 => 110, 639 => 107, 637 => 105, 624 => 104, 611 => 433, 608 => 432, 606 => 427, 603 => 426, 600 => 425, 598 => 423, 597 => 422, 594 => 421, 592 => 420, 586 => 416, 584 => 413, 583 => 412, 582 => 411, 581 => 410, 577 => 408, 575 => 390, 572 => 389, 570 => 367, 567 => 366, 565 => 328, 562 => 327, 559 => 317, 557 => 308, 554 => 307, 552 => 305, 549 => 304, 546 => 272, 543 => 271, 540 => 233, 538 => 232, 533 => 229, 530 => 228, 528 => 221, 526 => 220, 523 => 219, 520 => 218, 518 => 211, 516 => 210, 513 => 209, 511 => 197, 508 => 196, 506 => 194, 505 => 193, 504 => 192, 498 => 188, 490 => 182, 479 => 179, 476 => 178, 472 => 177, 467 => 174, 465 => 173, 462 => 172, 458 => 170, 456 => 166, 455 => 165, 451 => 163, 449 => 162, 446 => 161, 444 => 159, 443 => 158, 442 => 157, 438 => 155, 436 => 154, 435 => 151, 434 => 145, 433 => 139, 432 => 134, 429 => 133, 426 => 132, 423 => 131, 420 => 130, 418 => 129, 414 => 127, 412 => 126, 406 => 122, 403 => 117, 401 => 112, 398 => 111, 396 => 104, 390 => 100, 377 => 99, 365 => 96, 362 => 91, 349 => 90, 337 => 88, 335 => 79, 334 => 78, 333 => 77, 332 => 76, 331 => 75, 330 => 70, 328 => 69, 315 => 68, 302 => 66, 296 => 64, 283 => 63, 260 => 61, 248 => 58, 246 => 56, 244 => 55, 242 => 54, 237 => 53, 224 => 52, 213 => 48, 211 => 47, 198 => 46, 187 => 42, 186 => 41, 184 => 40, 171 => 39, 153 => 31, 149 => 30, 145 => 29, 141 => 28, 137 => 27, 133 => 26, 124 => 19, 122 => 17, 121 => 16, 120 => 15, 119 => 14, 118 => 13, 117 => 12, 116 => 11, 114 => 10, 111 => 9, 98 => 8, 87 => 1, 84 => 6, 81 => 4, 79 => 3, 77 => 2, 64 => 1,);
}
public function getSourceContext(): Source
{
return new Source("{% extends 'pages/base.html.twig' %}
{% set page_type_tracking = 'cp products' %}
{% if variant.attributes.centAmountGross is defined %}
{% set currentPrice = variant.attributes|default({'centAmountGross': 0}) %}
{% else %}
{% set currentPrice = {'centAmountGross': 0} %}
{% endif%}
{% block gtmDataLayer %}
{% set objectId = product.id|default ~'.' ~ variant.id|default %}
{% include('components/atoms/gtm-data-layer/gtm-data-layer.html.twig') with {
'product_id': variant.displaySku|default(''),
'objectId':objectId,
'product_name': variant.name|default(''),
'category': product.categoryName|default(''),
'product_price': currentPrice.centAmountGross|priceDefaultFormat|default(''),
'brand': variant.structuredData.brand.name.value|default(''),
'availability': variant.salesStatus == \"saleable\" ? \"yes\" : \"no\"
} %}
<script>
window.dataLayer.push({
'event': 'eec.detail_view',
'ecommerce': {
'detail': {
'actionField': {'list': 'cp products'},
'products': [{
'name': '{{ variant.name|default('') }}',
'id': '{{ variant.displaySku|default('') }}',
'objectId':'{{ objectId }}',
'price': '{{ currentPrice.centAmountGross|priceDefaultFormat }}',
'brand': '{{ variant.structuredData.brand.name.value|default('') }}',
'category': '{{ product.categoryName|default('') }}',
}]
}
},
})
</script>
{% endblock %}
{% block meta %}
{% include 'components/organisms/meta/meta.html.twig' with {
'metaInformation': variant.metaInformation|default(null),
'fallback': variant.name ~ 'meta_description_default'|trans,
} %}
{% endblock %}
{% block openGraph %}
{% include 'components/organisms/open-graph/open-graph.html.twig' with {
'openGraphInformation': variant.openGraphInformation|default(null)
} %}
{% endblock %}
{% block structuredData %}
{{ parent() }}
{% if variantStructuredData is defined %}
{% include('components/atoms/structured-data/structured-data.html.twig') with {
'structuredData': variantStructuredData|default,
} %}
{% endif %}
{% endblock %}
{% block title %}{{ variant.name|default(product.name) }}{% endblock %}
{% block stylesheets %}
{{ parent() }}
{{ encore_entry_link_tags('product') }}
{% endblock %}
{% block econdaTracing %}
{% include('components/atoms/econda-tracking/econda-tracking.html.twig') with{
'page_type_tracking': page_type_tracking,
'econdaSend': {
ec_Event: [
{
type: 'view',
pid: variant.displaySku|default('') ,
sku: variant.displaySku|default('') ,
name: variant.name|default('') ,
price: currentPrice.centAmountGross|priceDefaultFormat ,
group: variant.categoryName,
count: 1,
var1: null,
var2: null,
var3: null
}
]
},
} %}
{% endblock %}
{% block breadcrumb %}
{% include('components/molecules/breadcrumb/breadcrumb.html.twig') with {
'page': 'detail',
'backOffset': -1,
'showBackAlways': true
} %}
{% endblock %}
{% block content %}
<div class=\"product-detail\">
<div class=\"product-detail__data\">
<div class=\"product-detail__header\">
<div class=\"product-detail__headline\">
{% block productHeadline %}
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h1',
'text': variant.name,
'class': 'product-description__headline'
} %}
{% endblock %}
{% block productSku %}
<p class=\"product-description__sku\">
{{ 'product_sku'|trans }}: {{ variant.displaySku }}
</p>
{% endblock %}
{% block productFeedback %}
<div class=\"etrusted--product-stars\" >
<etrusted-product-review-list-widget-product-star-extension></etrusted-product-review-list-widget-product-star-extension>
</div>
{% endblock %}
</div>
<div class=\"product-detail__image\">
{% include('components/organisms/pdp-gallery/pdp-gallery.html.twig') %}
</div>
<div class=\"product-detail__description\">
{% set accessoriesSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY') ) %}
{% set sparepartSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ) %}
{% set mainSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::MAIN') ) %}
{% set serviceSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SERVICE') ) %}
{% set productLinks = [
{slug: '#product_information', name: 'product_information'|trans, active: true, gtm: 'data-gtm-cp-pdp-go-to'},
{
slug: '#serviceProductsSlider',
name: 'product_service'|trans,
active: (serviceSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#product-compare',
name: 'compare_products'|trans,
active: (variant.attributes.comparable_articles is defined and variant.attributes.comparable_articles is not empty),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#accessoriesProductsSlider',
name: 'accessories_products_slider_headline'|trans,
active: (accessoriesSkus|length > 0) or (sparepartSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
]|filter(v => v.active) %}
{% include 'components/organisms/product-description/product-description.html.twig' with {
'product': product,
'variant': variant
} %}
{% if productLinks|length > 0 %}
<div class=\"product-detail__actions\">
{% include('components/molecules/link-list/link-list.html.twig') with {
'entries': productLinks,
'class': 'link-list--pdp',
'classLink': 'text-link--arrow-left'
} %}
</div>
{% endif %}
{% if variant.ghsImages is defined and variant.ghsImages is not empty %}
<div class=\"product-detail__icons\">
<div class=\"js-icon-image-gallery product-detail__icons-slider icon-slider\">
<div class=\"swiper-wrapper\">
{% for icon in variant.ghsImages %}
<div class=\"swiper-slide\">
<img height=\"40\" src=\"{{ icon.uri| default}}\" alt=\"{{ icon.text| default }}\">
</div>
{% endfor %}
</div>
<div class=\"icon-slider__prev swiper-button-prev\" aria-hidden=\"true\"></div>
<div class=\"icon-slider__next swiper-button-next\" aria-hidden=\"true\"></div>
</div>
</div>
{% endif %}
</div>
</div>
<div class=\"product-detail__sidebar\">
<div class=\"product-detail__variant-anchor\" id=\"buy-box__variant-selection\"></div>
{% include 'components/organisms/variant-selection/variant-selection.html.twig' with {
'product': product,
'variant': variant,
} %}
<div class=\"product-detail__sticky-box\">
{% block buyBox %}
{% include 'components/organisms/buy-box/buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts
} %}
{% block buyBoxActions %}
<div class=\"buy-box__actions\">
{% include 'components/molecules/icon-links-actions/icon-links-actions.html.twig' %}
</div>
{% endblock %}
{% endblock %}
{% if slot_pdp_sidebar_default is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar_default,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
{% if slot_pdp_sidebar is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
</div>
</div>
<div class=\"product-detail__info\">
{% if not isPunchout %}
{% block econdaSlider %}
<div class=\"spacing spacing--30\"></div>
<div class=\"product-detail__econda-div\">
<div class=\"product-detail__econda-slider\" id=\"econdaProductsSlider\">
{% set econdaWidgets = [{
id:'econda_1',
widgetId: 'econda_product_widget_id'|trans,
headline: {
text:'similar_products_slider_headline'|trans,
},
component: ''
},
{
id:'econda_2',
widgetId: 'econda_product_buy_together_widget_id'|trans,
headline:{
text:'purchased_together_products_slider_headline'|trans,
},
component: ''
}
] %}
{% embed 'components/organisms/tabs/tabs.html.twig' with {
'entries': econdaWidgets
} %}
{% block entryContent %}
{% include ('components/organisms/econda-slider/econda-slider.html.twig') with {
'econdaContentIdentifier': 'productEcondaSilder',
'econdaProductId': variant.displaySku|default(''),
'widgetId': entry['widgetId'],
'headline': '',
'class': 'econda-slider-pdp'
} %}
{% endblock %}
{% endembed %}
</div>
</div>
{% endblock %}
{% endif %}
{% block additionalInformation %}
<div class=\"spacing spacing--30\"></div>
{% include 'pages/product/data-tabs.html.twig' %}
{% if variant.links.epaper is defined and variant.links.epaper|default is not empty %}
{% include 'components/atoms/text-link/text-link.html.twig'
with {
'class': 'text-link--arrow-right text-link--hide-in-print',
'href': variant.links.epaper|default,
'text': 'catalog_page'|trans,
'attributes': {
target: '_blank'
}
} %}
{% endif %}
<div class=\"spacing spacing--10\"></div>
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/atoms/button/button.html.twig'
with {
'class': 'text-link js-modal button--arrow-right text-link--arrow-right',
'type': 'button',
'attributes': {
'data-modal-id': 'inquiry'
}
} %}
{% block content %}
{{ 'expert_advice_questions'|trans }}
<span class=\"text-link__arrow\"></span>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block tenderText %}
{% endblock %}
{% block compare %}
{% if variant.attributes.comparable_articles is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
{% include ('components/organisms/product-compare/product-compare.html.twig') with {
\"productSku\": variant.sku,
\"compareSkus\":variant.attributes.comparable_articles
} %}
{% endif%}
{% endblock %}
{% block slot_center %}
{% if slot_pdp_center is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
<div class=\"product-detail__cms-center\">
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_center
} %}
</div>
{% endif%}
{% endblock %}
{% block extraProductListing %}
{% if serviceSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'product_service'|trans,
'class': 'headline--section',
'attributes': {
'id':'serviceProductsSlider'
}
} %}
<div class=\"product-detail__service-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': serviceSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{%endif%}
{% if mainSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'main_products'|trans,
'class': 'headline--section'
} %}
<div class=\"product-detail__main-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': mainSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{% endif %}
{% endblock %}
{% block accessoriesProductsSlider %}
{% if sparepartSkus is not empty or accessoriesSkus is not empty %}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'accessories_products_slider_headline'|trans,
'class': 'headline--section',
'attributes': {
'id':'accessoriesProductsSlider'
}
} %}
<related-products-tabs
tab-entries=\"{{ getCrossSellEntries(variant, [constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY'),constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ])|json_encode }}\"
css-class=\"related-products-tabs\"
image-service=\"{{ imageservice }}\"
api-url=\"{{ path('app_get_products')}}\"
add-product-url=\"{{ path('checkout_cart_add_line_item') }}\"
id=\"pdp-related-products\"
current-language=\"{{ storeContext.localeInfo.currentLocale}}\"
product-component-class=\"product-component\"></related-products-tabs>
{% endif %}
{% endblock %}
{% block feedback %}
{% if 'product_feedback_widget_id'|transFallbackEmptyText is not empty and not isPunchout %}
<div id=\"feedback\" class=\"product-detail__feedback etrusted-js etrusted--invisible\">
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'customer_reviews'|trans,
'class': 'headline--section'
} %}
{% include 'components/atoms/etrusted/etrusted.html.twig' with {
'type':'product',
'class': 'etrusted--product-feedback',
'sku':variant.sku ,
'widget_id':'product_feedback_widget_id'|trans
} %}
</div>
{% endif %}
{%endblock%}
</div>
<div class=\"product-detail__mobile-buy-box\">
{% include 'components/organisms/buy-box/small-mobile-buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts,
'class': 'buy-box--mobile'
} %}
</div>
</div>
<div class=\"product-detail__cms-bottom\">
{% if slot_pdp_bottom is defined %}
<div class=\"spacing spacing--50\"></div>
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_bottom
} %}
{% else %}
<div class=\"spacing spacing--50\"></div>
{% include ('components/organisms/last-seen-product-slider/last-seen-product-slider.html.twig') with {
'headline': 'recently_viewed'|trans,
'headlineTag': 'h2',
'additionalClass': 'product-detail__last-seen'
} %}
{% endif %}
</div>
</div>
{% endblock %}
{% block offcanvasCart %}
{% include 'components/organisms/offcanvas-cart/offcanvas-cart.html.twig' %}
{% endblock %}
{% block modal %}
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/organisms/modal/modal.html.twig' with {
'modalId': 'inquiry'
} %}
{% block modalContent %}
{% set extraData = extraData|default({}) %}
{% set extraData = extraData|merge({'inquiryType': 'product'}) %}
{% set extraData = extraData|merge({'productSku': variant.sku}) %}
{% set extraData = extraData|merge({'products': structuredProducts|json_encode}) %}
<dynamic-form
service-base-url=\"{{ formservice }}\"
form-id=\"{{ cms_globals.slot_inquiry }}\"
extra-data=\"{{ extraData|json_encode }}\"
locale=\"{{ storeContext.localeInfo.currentLocale }}\"
frc-site-key=\"{{ frc_sitekey }}\"
></dynamic-form>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block javascripts %}
<script>
window.dataStore = window.dataStore || [];
window.dataStore.sku = {{ variant.sku|default('') }};
</script>
{{ parent() }}
{{ encore_entry_script_tags('product') }}
{% endblock %}
", "pages/product/get_detail.html.twig", "/var/www/html/templates/default/pages/product/get_detail.html.twig");
}
}
/* pages/product/get_detail.html.twig */
class __TwigTemplate_a036afd2f019ede9ab963721d351c017___775155179 extends Template
{
private Source $source;
/**
* @var array<string, Template>
*/
private array $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'entryContent' => [$this, 'block_entryContent'],
];
}
protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
{
// line 255
return "components/organisms/tabs/tabs.html.twig";
}
protected function doDisplay(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$this->parent = $this->load("components/organisms/tabs/tabs.html.twig", 255);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 258
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_entryContent(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "entryContent"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "entryContent"));
// line 259
yield " ";
yield from $this->load("components/organisms/econda-slider/econda-slider.html.twig", 259)->unwrap()->yield(CoreExtension::merge($context, ["econdaContentIdentifier" => "productEcondaSilder", "econdaProductId" => ((CoreExtension::getAttribute($this->env, $this->source, // line 261
($context["variant"] ?? null), "displaySku", [], "any", true, true, false, 261)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 261, $this->source); })()), "displaySku", [], "any", false, false, false, 261), "")) : ("")), "widgetId" => CoreExtension::getAttribute($this->env, $this->source, // line 262
(isset($context["entry"]) || array_key_exists("entry", $context) ? $context["entry"] : (function () { throw new RuntimeError('Variable "entry" does not exist.', 262, $this->source); })()), "widgetId", [], "array", false, false, false, 262), "headline" => "", "class" => "econda-slider-pdp"]));
// line 266
yield " ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName(): string
{
return "pages/product/get_detail.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable(): bool
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo(): array
{
return array ( 1796 => 266, 1794 => 262, 1793 => 261, 1791 => 259, 1778 => 258, 1755 => 255, 1215 => 471, 1210 => 469, 1205 => 467, 1201 => 465, 1188 => 464, 1176 => 461, 1173 => 460, 1170 => 442, 1167 => 441, 1154 => 440, 1142 => 438, 1139 => 437, 1126 => 436, 1115 => 407, 1111 => 405, 1109 => 402, 1107 => 399, 1105 => 394, 1101 => 392, 1098 => 391, 1085 => 390, 1074 => 388, 1068 => 385, 1063 => 383, 1059 => 382, 1055 => 381, 1050 => 379, 1047 => 378, 1045 => 370, 1042 => 369, 1039 => 368, 1026 => 367, 1015 => 365, 1011 => 363, 1009 => 361, 1008 => 359, 1007 => 357, 1004 => 356, 1002 => 351, 999 => 350, 997 => 349, 994 => 348, 990 => 346, 988 => 344, 987 => 342, 986 => 340, 983 => 339, 981 => 331, 978 => 330, 975 => 329, 962 => 328, 951 => 326, 947 => 324, 945 => 322, 944 => 321, 940 => 319, 937 => 318, 924 => 317, 913 => 316, 910 => 315, 908 => 313, 907 => 312, 906 => 311, 903 => 310, 900 => 309, 887 => 308, 876 => 306, 863 => 305, 851 => 302, 848 => 301, 845 => 288, 843 => 287, 840 => 286, 837 => 285, 835 => 279, 833 => 276, 830 => 275, 828 => 274, 825 => 273, 812 => 272, 799 => 268, 797 => 256, 795 => 255, 793 => 238, 787 => 234, 774 => 233, 762 => 206, 760 => 205, 757 => 204, 744 => 203, 733 => 208, 730 => 203, 728 => 201, 727 => 200, 726 => 199, 724 => 198, 711 => 197, 697 => 118, 684 => 117, 668 => 114, 665 => 113, 652 => 112, 641 => 110, 639 => 107, 637 => 105, 624 => 104, 611 => 433, 608 => 432, 606 => 427, 603 => 426, 600 => 425, 598 => 423, 597 => 422, 594 => 421, 592 => 420, 586 => 416, 584 => 413, 583 => 412, 582 => 411, 581 => 410, 577 => 408, 575 => 390, 572 => 389, 570 => 367, 567 => 366, 565 => 328, 562 => 327, 559 => 317, 557 => 308, 554 => 307, 552 => 305, 549 => 304, 546 => 272, 543 => 271, 540 => 233, 538 => 232, 533 => 229, 530 => 228, 528 => 221, 526 => 220, 523 => 219, 520 => 218, 518 => 211, 516 => 210, 513 => 209, 511 => 197, 508 => 196, 506 => 194, 505 => 193, 504 => 192, 498 => 188, 490 => 182, 479 => 179, 476 => 178, 472 => 177, 467 => 174, 465 => 173, 462 => 172, 458 => 170, 456 => 166, 455 => 165, 451 => 163, 449 => 162, 446 => 161, 444 => 159, 443 => 158, 442 => 157, 438 => 155, 436 => 154, 435 => 151, 434 => 145, 433 => 139, 432 => 134, 429 => 133, 426 => 132, 423 => 131, 420 => 130, 418 => 129, 414 => 127, 412 => 126, 406 => 122, 403 => 117, 401 => 112, 398 => 111, 396 => 104, 390 => 100, 377 => 99, 365 => 96, 362 => 91, 349 => 90, 337 => 88, 335 => 79, 334 => 78, 333 => 77, 332 => 76, 331 => 75, 330 => 70, 328 => 69, 315 => 68, 302 => 66, 296 => 64, 283 => 63, 260 => 61, 248 => 58, 246 => 56, 244 => 55, 242 => 54, 237 => 53, 224 => 52, 213 => 48, 211 => 47, 198 => 46, 187 => 42, 186 => 41, 184 => 40, 171 => 39, 153 => 31, 149 => 30, 145 => 29, 141 => 28, 137 => 27, 133 => 26, 124 => 19, 122 => 17, 121 => 16, 120 => 15, 119 => 14, 118 => 13, 117 => 12, 116 => 11, 114 => 10, 111 => 9, 98 => 8, 87 => 1, 84 => 6, 81 => 4, 79 => 3, 77 => 2, 64 => 1,);
}
public function getSourceContext(): Source
{
return new Source("{% extends 'pages/base.html.twig' %}
{% set page_type_tracking = 'cp products' %}
{% if variant.attributes.centAmountGross is defined %}
{% set currentPrice = variant.attributes|default({'centAmountGross': 0}) %}
{% else %}
{% set currentPrice = {'centAmountGross': 0} %}
{% endif%}
{% block gtmDataLayer %}
{% set objectId = product.id|default ~'.' ~ variant.id|default %}
{% include('components/atoms/gtm-data-layer/gtm-data-layer.html.twig') with {
'product_id': variant.displaySku|default(''),
'objectId':objectId,
'product_name': variant.name|default(''),
'category': product.categoryName|default(''),
'product_price': currentPrice.centAmountGross|priceDefaultFormat|default(''),
'brand': variant.structuredData.brand.name.value|default(''),
'availability': variant.salesStatus == \"saleable\" ? \"yes\" : \"no\"
} %}
<script>
window.dataLayer.push({
'event': 'eec.detail_view',
'ecommerce': {
'detail': {
'actionField': {'list': 'cp products'},
'products': [{
'name': '{{ variant.name|default('') }}',
'id': '{{ variant.displaySku|default('') }}',
'objectId':'{{ objectId }}',
'price': '{{ currentPrice.centAmountGross|priceDefaultFormat }}',
'brand': '{{ variant.structuredData.brand.name.value|default('') }}',
'category': '{{ product.categoryName|default('') }}',
}]
}
},
})
</script>
{% endblock %}
{% block meta %}
{% include 'components/organisms/meta/meta.html.twig' with {
'metaInformation': variant.metaInformation|default(null),
'fallback': variant.name ~ 'meta_description_default'|trans,
} %}
{% endblock %}
{% block openGraph %}
{% include 'components/organisms/open-graph/open-graph.html.twig' with {
'openGraphInformation': variant.openGraphInformation|default(null)
} %}
{% endblock %}
{% block structuredData %}
{{ parent() }}
{% if variantStructuredData is defined %}
{% include('components/atoms/structured-data/structured-data.html.twig') with {
'structuredData': variantStructuredData|default,
} %}
{% endif %}
{% endblock %}
{% block title %}{{ variant.name|default(product.name) }}{% endblock %}
{% block stylesheets %}
{{ parent() }}
{{ encore_entry_link_tags('product') }}
{% endblock %}
{% block econdaTracing %}
{% include('components/atoms/econda-tracking/econda-tracking.html.twig') with{
'page_type_tracking': page_type_tracking,
'econdaSend': {
ec_Event: [
{
type: 'view',
pid: variant.displaySku|default('') ,
sku: variant.displaySku|default('') ,
name: variant.name|default('') ,
price: currentPrice.centAmountGross|priceDefaultFormat ,
group: variant.categoryName,
count: 1,
var1: null,
var2: null,
var3: null
}
]
},
} %}
{% endblock %}
{% block breadcrumb %}
{% include('components/molecules/breadcrumb/breadcrumb.html.twig') with {
'page': 'detail',
'backOffset': -1,
'showBackAlways': true
} %}
{% endblock %}
{% block content %}
<div class=\"product-detail\">
<div class=\"product-detail__data\">
<div class=\"product-detail__header\">
<div class=\"product-detail__headline\">
{% block productHeadline %}
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h1',
'text': variant.name,
'class': 'product-description__headline'
} %}
{% endblock %}
{% block productSku %}
<p class=\"product-description__sku\">
{{ 'product_sku'|trans }}: {{ variant.displaySku }}
</p>
{% endblock %}
{% block productFeedback %}
<div class=\"etrusted--product-stars\" >
<etrusted-product-review-list-widget-product-star-extension></etrusted-product-review-list-widget-product-star-extension>
</div>
{% endblock %}
</div>
<div class=\"product-detail__image\">
{% include('components/organisms/pdp-gallery/pdp-gallery.html.twig') %}
</div>
<div class=\"product-detail__description\">
{% set accessoriesSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY') ) %}
{% set sparepartSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ) %}
{% set mainSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::MAIN') ) %}
{% set serviceSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SERVICE') ) %}
{% set productLinks = [
{slug: '#product_information', name: 'product_information'|trans, active: true, gtm: 'data-gtm-cp-pdp-go-to'},
{
slug: '#serviceProductsSlider',
name: 'product_service'|trans,
active: (serviceSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#product-compare',
name: 'compare_products'|trans,
active: (variant.attributes.comparable_articles is defined and variant.attributes.comparable_articles is not empty),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#accessoriesProductsSlider',
name: 'accessories_products_slider_headline'|trans,
active: (accessoriesSkus|length > 0) or (sparepartSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
]|filter(v => v.active) %}
{% include 'components/organisms/product-description/product-description.html.twig' with {
'product': product,
'variant': variant
} %}
{% if productLinks|length > 0 %}
<div class=\"product-detail__actions\">
{% include('components/molecules/link-list/link-list.html.twig') with {
'entries': productLinks,
'class': 'link-list--pdp',
'classLink': 'text-link--arrow-left'
} %}
</div>
{% endif %}
{% if variant.ghsImages is defined and variant.ghsImages is not empty %}
<div class=\"product-detail__icons\">
<div class=\"js-icon-image-gallery product-detail__icons-slider icon-slider\">
<div class=\"swiper-wrapper\">
{% for icon in variant.ghsImages %}
<div class=\"swiper-slide\">
<img height=\"40\" src=\"{{ icon.uri| default}}\" alt=\"{{ icon.text| default }}\">
</div>
{% endfor %}
</div>
<div class=\"icon-slider__prev swiper-button-prev\" aria-hidden=\"true\"></div>
<div class=\"icon-slider__next swiper-button-next\" aria-hidden=\"true\"></div>
</div>
</div>
{% endif %}
</div>
</div>
<div class=\"product-detail__sidebar\">
<div class=\"product-detail__variant-anchor\" id=\"buy-box__variant-selection\"></div>
{% include 'components/organisms/variant-selection/variant-selection.html.twig' with {
'product': product,
'variant': variant,
} %}
<div class=\"product-detail__sticky-box\">
{% block buyBox %}
{% include 'components/organisms/buy-box/buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts
} %}
{% block buyBoxActions %}
<div class=\"buy-box__actions\">
{% include 'components/molecules/icon-links-actions/icon-links-actions.html.twig' %}
</div>
{% endblock %}
{% endblock %}
{% if slot_pdp_sidebar_default is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar_default,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
{% if slot_pdp_sidebar is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
</div>
</div>
<div class=\"product-detail__info\">
{% if not isPunchout %}
{% block econdaSlider %}
<div class=\"spacing spacing--30\"></div>
<div class=\"product-detail__econda-div\">
<div class=\"product-detail__econda-slider\" id=\"econdaProductsSlider\">
{% set econdaWidgets = [{
id:'econda_1',
widgetId: 'econda_product_widget_id'|trans,
headline: {
text:'similar_products_slider_headline'|trans,
},
component: ''
},
{
id:'econda_2',
widgetId: 'econda_product_buy_together_widget_id'|trans,
headline:{
text:'purchased_together_products_slider_headline'|trans,
},
component: ''
}
] %}
{% embed 'components/organisms/tabs/tabs.html.twig' with {
'entries': econdaWidgets
} %}
{% block entryContent %}
{% include ('components/organisms/econda-slider/econda-slider.html.twig') with {
'econdaContentIdentifier': 'productEcondaSilder',
'econdaProductId': variant.displaySku|default(''),
'widgetId': entry['widgetId'],
'headline': '',
'class': 'econda-slider-pdp'
} %}
{% endblock %}
{% endembed %}
</div>
</div>
{% endblock %}
{% endif %}
{% block additionalInformation %}
<div class=\"spacing spacing--30\"></div>
{% include 'pages/product/data-tabs.html.twig' %}
{% if variant.links.epaper is defined and variant.links.epaper|default is not empty %}
{% include 'components/atoms/text-link/text-link.html.twig'
with {
'class': 'text-link--arrow-right text-link--hide-in-print',
'href': variant.links.epaper|default,
'text': 'catalog_page'|trans,
'attributes': {
target: '_blank'
}
} %}
{% endif %}
<div class=\"spacing spacing--10\"></div>
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/atoms/button/button.html.twig'
with {
'class': 'text-link js-modal button--arrow-right text-link--arrow-right',
'type': 'button',
'attributes': {
'data-modal-id': 'inquiry'
}
} %}
{% block content %}
{{ 'expert_advice_questions'|trans }}
<span class=\"text-link__arrow\"></span>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block tenderText %}
{% endblock %}
{% block compare %}
{% if variant.attributes.comparable_articles is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
{% include ('components/organisms/product-compare/product-compare.html.twig') with {
\"productSku\": variant.sku,
\"compareSkus\":variant.attributes.comparable_articles
} %}
{% endif%}
{% endblock %}
{% block slot_center %}
{% if slot_pdp_center is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
<div class=\"product-detail__cms-center\">
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_center
} %}
</div>
{% endif%}
{% endblock %}
{% block extraProductListing %}
{% if serviceSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'product_service'|trans,
'class': 'headline--section',
'attributes': {
'id':'serviceProductsSlider'
}
} %}
<div class=\"product-detail__service-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': serviceSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{%endif%}
{% if mainSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'main_products'|trans,
'class': 'headline--section'
} %}
<div class=\"product-detail__main-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': mainSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{% endif %}
{% endblock %}
{% block accessoriesProductsSlider %}
{% if sparepartSkus is not empty or accessoriesSkus is not empty %}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'accessories_products_slider_headline'|trans,
'class': 'headline--section',
'attributes': {
'id':'accessoriesProductsSlider'
}
} %}
<related-products-tabs
tab-entries=\"{{ getCrossSellEntries(variant, [constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY'),constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ])|json_encode }}\"
css-class=\"related-products-tabs\"
image-service=\"{{ imageservice }}\"
api-url=\"{{ path('app_get_products')}}\"
add-product-url=\"{{ path('checkout_cart_add_line_item') }}\"
id=\"pdp-related-products\"
current-language=\"{{ storeContext.localeInfo.currentLocale}}\"
product-component-class=\"product-component\"></related-products-tabs>
{% endif %}
{% endblock %}
{% block feedback %}
{% if 'product_feedback_widget_id'|transFallbackEmptyText is not empty and not isPunchout %}
<div id=\"feedback\" class=\"product-detail__feedback etrusted-js etrusted--invisible\">
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'customer_reviews'|trans,
'class': 'headline--section'
} %}
{% include 'components/atoms/etrusted/etrusted.html.twig' with {
'type':'product',
'class': 'etrusted--product-feedback',
'sku':variant.sku ,
'widget_id':'product_feedback_widget_id'|trans
} %}
</div>
{% endif %}
{%endblock%}
</div>
<div class=\"product-detail__mobile-buy-box\">
{% include 'components/organisms/buy-box/small-mobile-buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts,
'class': 'buy-box--mobile'
} %}
</div>
</div>
<div class=\"product-detail__cms-bottom\">
{% if slot_pdp_bottom is defined %}
<div class=\"spacing spacing--50\"></div>
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_bottom
} %}
{% else %}
<div class=\"spacing spacing--50\"></div>
{% include ('components/organisms/last-seen-product-slider/last-seen-product-slider.html.twig') with {
'headline': 'recently_viewed'|trans,
'headlineTag': 'h2',
'additionalClass': 'product-detail__last-seen'
} %}
{% endif %}
</div>
</div>
{% endblock %}
{% block offcanvasCart %}
{% include 'components/organisms/offcanvas-cart/offcanvas-cart.html.twig' %}
{% endblock %}
{% block modal %}
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/organisms/modal/modal.html.twig' with {
'modalId': 'inquiry'
} %}
{% block modalContent %}
{% set extraData = extraData|default({}) %}
{% set extraData = extraData|merge({'inquiryType': 'product'}) %}
{% set extraData = extraData|merge({'productSku': variant.sku}) %}
{% set extraData = extraData|merge({'products': structuredProducts|json_encode}) %}
<dynamic-form
service-base-url=\"{{ formservice }}\"
form-id=\"{{ cms_globals.slot_inquiry }}\"
extra-data=\"{{ extraData|json_encode }}\"
locale=\"{{ storeContext.localeInfo.currentLocale }}\"
frc-site-key=\"{{ frc_sitekey }}\"
></dynamic-form>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block javascripts %}
<script>
window.dataStore = window.dataStore || [];
window.dataStore.sku = {{ variant.sku|default('') }};
</script>
{{ parent() }}
{{ encore_entry_script_tags('product') }}
{% endblock %}
", "pages/product/get_detail.html.twig", "/var/www/html/templates/default/pages/product/get_detail.html.twig");
}
}
/* pages/product/get_detail.html.twig */
class __TwigTemplate_a036afd2f019ede9ab963721d351c017___188396788 extends Template
{
private Source $source;
/**
* @var array<string, Template>
*/
private array $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'content' => [$this, 'block_content'],
];
}
protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
{
// line 288
return "components/atoms/button/button.html.twig";
}
protected function doDisplay(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$this->parent = $this->load("components/atoms/button/button.html.twig", 288);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 296
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_content(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
// line 297
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("expert_advice_questions"), "html", null, true);
yield "
<span class=\"text-link__arrow\"></span>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName(): string
{
return "pages/product/get_detail.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable(): bool
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo(): array
{
return array ( 2369 => 297, 2356 => 296, 2333 => 288, 1796 => 266, 1794 => 262, 1793 => 261, 1791 => 259, 1778 => 258, 1755 => 255, 1215 => 471, 1210 => 469, 1205 => 467, 1201 => 465, 1188 => 464, 1176 => 461, 1173 => 460, 1170 => 442, 1167 => 441, 1154 => 440, 1142 => 438, 1139 => 437, 1126 => 436, 1115 => 407, 1111 => 405, 1109 => 402, 1107 => 399, 1105 => 394, 1101 => 392, 1098 => 391, 1085 => 390, 1074 => 388, 1068 => 385, 1063 => 383, 1059 => 382, 1055 => 381, 1050 => 379, 1047 => 378, 1045 => 370, 1042 => 369, 1039 => 368, 1026 => 367, 1015 => 365, 1011 => 363, 1009 => 361, 1008 => 359, 1007 => 357, 1004 => 356, 1002 => 351, 999 => 350, 997 => 349, 994 => 348, 990 => 346, 988 => 344, 987 => 342, 986 => 340, 983 => 339, 981 => 331, 978 => 330, 975 => 329, 962 => 328, 951 => 326, 947 => 324, 945 => 322, 944 => 321, 940 => 319, 937 => 318, 924 => 317, 913 => 316, 910 => 315, 908 => 313, 907 => 312, 906 => 311, 903 => 310, 900 => 309, 887 => 308, 876 => 306, 863 => 305, 851 => 302, 848 => 301, 845 => 288, 843 => 287, 840 => 286, 837 => 285, 835 => 279, 833 => 276, 830 => 275, 828 => 274, 825 => 273, 812 => 272, 799 => 268, 797 => 256, 795 => 255, 793 => 238, 787 => 234, 774 => 233, 762 => 206, 760 => 205, 757 => 204, 744 => 203, 733 => 208, 730 => 203, 728 => 201, 727 => 200, 726 => 199, 724 => 198, 711 => 197, 697 => 118, 684 => 117, 668 => 114, 665 => 113, 652 => 112, 641 => 110, 639 => 107, 637 => 105, 624 => 104, 611 => 433, 608 => 432, 606 => 427, 603 => 426, 600 => 425, 598 => 423, 597 => 422, 594 => 421, 592 => 420, 586 => 416, 584 => 413, 583 => 412, 582 => 411, 581 => 410, 577 => 408, 575 => 390, 572 => 389, 570 => 367, 567 => 366, 565 => 328, 562 => 327, 559 => 317, 557 => 308, 554 => 307, 552 => 305, 549 => 304, 546 => 272, 543 => 271, 540 => 233, 538 => 232, 533 => 229, 530 => 228, 528 => 221, 526 => 220, 523 => 219, 520 => 218, 518 => 211, 516 => 210, 513 => 209, 511 => 197, 508 => 196, 506 => 194, 505 => 193, 504 => 192, 498 => 188, 490 => 182, 479 => 179, 476 => 178, 472 => 177, 467 => 174, 465 => 173, 462 => 172, 458 => 170, 456 => 166, 455 => 165, 451 => 163, 449 => 162, 446 => 161, 444 => 159, 443 => 158, 442 => 157, 438 => 155, 436 => 154, 435 => 151, 434 => 145, 433 => 139, 432 => 134, 429 => 133, 426 => 132, 423 => 131, 420 => 130, 418 => 129, 414 => 127, 412 => 126, 406 => 122, 403 => 117, 401 => 112, 398 => 111, 396 => 104, 390 => 100, 377 => 99, 365 => 96, 362 => 91, 349 => 90, 337 => 88, 335 => 79, 334 => 78, 333 => 77, 332 => 76, 331 => 75, 330 => 70, 328 => 69, 315 => 68, 302 => 66, 296 => 64, 283 => 63, 260 => 61, 248 => 58, 246 => 56, 244 => 55, 242 => 54, 237 => 53, 224 => 52, 213 => 48, 211 => 47, 198 => 46, 187 => 42, 186 => 41, 184 => 40, 171 => 39, 153 => 31, 149 => 30, 145 => 29, 141 => 28, 137 => 27, 133 => 26, 124 => 19, 122 => 17, 121 => 16, 120 => 15, 119 => 14, 118 => 13, 117 => 12, 116 => 11, 114 => 10, 111 => 9, 98 => 8, 87 => 1, 84 => 6, 81 => 4, 79 => 3, 77 => 2, 64 => 1,);
}
public function getSourceContext(): Source
{
return new Source("{% extends 'pages/base.html.twig' %}
{% set page_type_tracking = 'cp products' %}
{% if variant.attributes.centAmountGross is defined %}
{% set currentPrice = variant.attributes|default({'centAmountGross': 0}) %}
{% else %}
{% set currentPrice = {'centAmountGross': 0} %}
{% endif%}
{% block gtmDataLayer %}
{% set objectId = product.id|default ~'.' ~ variant.id|default %}
{% include('components/atoms/gtm-data-layer/gtm-data-layer.html.twig') with {
'product_id': variant.displaySku|default(''),
'objectId':objectId,
'product_name': variant.name|default(''),
'category': product.categoryName|default(''),
'product_price': currentPrice.centAmountGross|priceDefaultFormat|default(''),
'brand': variant.structuredData.brand.name.value|default(''),
'availability': variant.salesStatus == \"saleable\" ? \"yes\" : \"no\"
} %}
<script>
window.dataLayer.push({
'event': 'eec.detail_view',
'ecommerce': {
'detail': {
'actionField': {'list': 'cp products'},
'products': [{
'name': '{{ variant.name|default('') }}',
'id': '{{ variant.displaySku|default('') }}',
'objectId':'{{ objectId }}',
'price': '{{ currentPrice.centAmountGross|priceDefaultFormat }}',
'brand': '{{ variant.structuredData.brand.name.value|default('') }}',
'category': '{{ product.categoryName|default('') }}',
}]
}
},
})
</script>
{% endblock %}
{% block meta %}
{% include 'components/organisms/meta/meta.html.twig' with {
'metaInformation': variant.metaInformation|default(null),
'fallback': variant.name ~ 'meta_description_default'|trans,
} %}
{% endblock %}
{% block openGraph %}
{% include 'components/organisms/open-graph/open-graph.html.twig' with {
'openGraphInformation': variant.openGraphInformation|default(null)
} %}
{% endblock %}
{% block structuredData %}
{{ parent() }}
{% if variantStructuredData is defined %}
{% include('components/atoms/structured-data/structured-data.html.twig') with {
'structuredData': variantStructuredData|default,
} %}
{% endif %}
{% endblock %}
{% block title %}{{ variant.name|default(product.name) }}{% endblock %}
{% block stylesheets %}
{{ parent() }}
{{ encore_entry_link_tags('product') }}
{% endblock %}
{% block econdaTracing %}
{% include('components/atoms/econda-tracking/econda-tracking.html.twig') with{
'page_type_tracking': page_type_tracking,
'econdaSend': {
ec_Event: [
{
type: 'view',
pid: variant.displaySku|default('') ,
sku: variant.displaySku|default('') ,
name: variant.name|default('') ,
price: currentPrice.centAmountGross|priceDefaultFormat ,
group: variant.categoryName,
count: 1,
var1: null,
var2: null,
var3: null
}
]
},
} %}
{% endblock %}
{% block breadcrumb %}
{% include('components/molecules/breadcrumb/breadcrumb.html.twig') with {
'page': 'detail',
'backOffset': -1,
'showBackAlways': true
} %}
{% endblock %}
{% block content %}
<div class=\"product-detail\">
<div class=\"product-detail__data\">
<div class=\"product-detail__header\">
<div class=\"product-detail__headline\">
{% block productHeadline %}
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h1',
'text': variant.name,
'class': 'product-description__headline'
} %}
{% endblock %}
{% block productSku %}
<p class=\"product-description__sku\">
{{ 'product_sku'|trans }}: {{ variant.displaySku }}
</p>
{% endblock %}
{% block productFeedback %}
<div class=\"etrusted--product-stars\" >
<etrusted-product-review-list-widget-product-star-extension></etrusted-product-review-list-widget-product-star-extension>
</div>
{% endblock %}
</div>
<div class=\"product-detail__image\">
{% include('components/organisms/pdp-gallery/pdp-gallery.html.twig') %}
</div>
<div class=\"product-detail__description\">
{% set accessoriesSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY') ) %}
{% set sparepartSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ) %}
{% set mainSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::MAIN') ) %}
{% set serviceSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SERVICE') ) %}
{% set productLinks = [
{slug: '#product_information', name: 'product_information'|trans, active: true, gtm: 'data-gtm-cp-pdp-go-to'},
{
slug: '#serviceProductsSlider',
name: 'product_service'|trans,
active: (serviceSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#product-compare',
name: 'compare_products'|trans,
active: (variant.attributes.comparable_articles is defined and variant.attributes.comparable_articles is not empty),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#accessoriesProductsSlider',
name: 'accessories_products_slider_headline'|trans,
active: (accessoriesSkus|length > 0) or (sparepartSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
]|filter(v => v.active) %}
{% include 'components/organisms/product-description/product-description.html.twig' with {
'product': product,
'variant': variant
} %}
{% if productLinks|length > 0 %}
<div class=\"product-detail__actions\">
{% include('components/molecules/link-list/link-list.html.twig') with {
'entries': productLinks,
'class': 'link-list--pdp',
'classLink': 'text-link--arrow-left'
} %}
</div>
{% endif %}
{% if variant.ghsImages is defined and variant.ghsImages is not empty %}
<div class=\"product-detail__icons\">
<div class=\"js-icon-image-gallery product-detail__icons-slider icon-slider\">
<div class=\"swiper-wrapper\">
{% for icon in variant.ghsImages %}
<div class=\"swiper-slide\">
<img height=\"40\" src=\"{{ icon.uri| default}}\" alt=\"{{ icon.text| default }}\">
</div>
{% endfor %}
</div>
<div class=\"icon-slider__prev swiper-button-prev\" aria-hidden=\"true\"></div>
<div class=\"icon-slider__next swiper-button-next\" aria-hidden=\"true\"></div>
</div>
</div>
{% endif %}
</div>
</div>
<div class=\"product-detail__sidebar\">
<div class=\"product-detail__variant-anchor\" id=\"buy-box__variant-selection\"></div>
{% include 'components/organisms/variant-selection/variant-selection.html.twig' with {
'product': product,
'variant': variant,
} %}
<div class=\"product-detail__sticky-box\">
{% block buyBox %}
{% include 'components/organisms/buy-box/buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts
} %}
{% block buyBoxActions %}
<div class=\"buy-box__actions\">
{% include 'components/molecules/icon-links-actions/icon-links-actions.html.twig' %}
</div>
{% endblock %}
{% endblock %}
{% if slot_pdp_sidebar_default is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar_default,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
{% if slot_pdp_sidebar is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
</div>
</div>
<div class=\"product-detail__info\">
{% if not isPunchout %}
{% block econdaSlider %}
<div class=\"spacing spacing--30\"></div>
<div class=\"product-detail__econda-div\">
<div class=\"product-detail__econda-slider\" id=\"econdaProductsSlider\">
{% set econdaWidgets = [{
id:'econda_1',
widgetId: 'econda_product_widget_id'|trans,
headline: {
text:'similar_products_slider_headline'|trans,
},
component: ''
},
{
id:'econda_2',
widgetId: 'econda_product_buy_together_widget_id'|trans,
headline:{
text:'purchased_together_products_slider_headline'|trans,
},
component: ''
}
] %}
{% embed 'components/organisms/tabs/tabs.html.twig' with {
'entries': econdaWidgets
} %}
{% block entryContent %}
{% include ('components/organisms/econda-slider/econda-slider.html.twig') with {
'econdaContentIdentifier': 'productEcondaSilder',
'econdaProductId': variant.displaySku|default(''),
'widgetId': entry['widgetId'],
'headline': '',
'class': 'econda-slider-pdp'
} %}
{% endblock %}
{% endembed %}
</div>
</div>
{% endblock %}
{% endif %}
{% block additionalInformation %}
<div class=\"spacing spacing--30\"></div>
{% include 'pages/product/data-tabs.html.twig' %}
{% if variant.links.epaper is defined and variant.links.epaper|default is not empty %}
{% include 'components/atoms/text-link/text-link.html.twig'
with {
'class': 'text-link--arrow-right text-link--hide-in-print',
'href': variant.links.epaper|default,
'text': 'catalog_page'|trans,
'attributes': {
target: '_blank'
}
} %}
{% endif %}
<div class=\"spacing spacing--10\"></div>
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/atoms/button/button.html.twig'
with {
'class': 'text-link js-modal button--arrow-right text-link--arrow-right',
'type': 'button',
'attributes': {
'data-modal-id': 'inquiry'
}
} %}
{% block content %}
{{ 'expert_advice_questions'|trans }}
<span class=\"text-link__arrow\"></span>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block tenderText %}
{% endblock %}
{% block compare %}
{% if variant.attributes.comparable_articles is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
{% include ('components/organisms/product-compare/product-compare.html.twig') with {
\"productSku\": variant.sku,
\"compareSkus\":variant.attributes.comparable_articles
} %}
{% endif%}
{% endblock %}
{% block slot_center %}
{% if slot_pdp_center is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
<div class=\"product-detail__cms-center\">
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_center
} %}
</div>
{% endif%}
{% endblock %}
{% block extraProductListing %}
{% if serviceSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'product_service'|trans,
'class': 'headline--section',
'attributes': {
'id':'serviceProductsSlider'
}
} %}
<div class=\"product-detail__service-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': serviceSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{%endif%}
{% if mainSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'main_products'|trans,
'class': 'headline--section'
} %}
<div class=\"product-detail__main-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': mainSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{% endif %}
{% endblock %}
{% block accessoriesProductsSlider %}
{% if sparepartSkus is not empty or accessoriesSkus is not empty %}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'accessories_products_slider_headline'|trans,
'class': 'headline--section',
'attributes': {
'id':'accessoriesProductsSlider'
}
} %}
<related-products-tabs
tab-entries=\"{{ getCrossSellEntries(variant, [constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY'),constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ])|json_encode }}\"
css-class=\"related-products-tabs\"
image-service=\"{{ imageservice }}\"
api-url=\"{{ path('app_get_products')}}\"
add-product-url=\"{{ path('checkout_cart_add_line_item') }}\"
id=\"pdp-related-products\"
current-language=\"{{ storeContext.localeInfo.currentLocale}}\"
product-component-class=\"product-component\"></related-products-tabs>
{% endif %}
{% endblock %}
{% block feedback %}
{% if 'product_feedback_widget_id'|transFallbackEmptyText is not empty and not isPunchout %}
<div id=\"feedback\" class=\"product-detail__feedback etrusted-js etrusted--invisible\">
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'customer_reviews'|trans,
'class': 'headline--section'
} %}
{% include 'components/atoms/etrusted/etrusted.html.twig' with {
'type':'product',
'class': 'etrusted--product-feedback',
'sku':variant.sku ,
'widget_id':'product_feedback_widget_id'|trans
} %}
</div>
{% endif %}
{%endblock%}
</div>
<div class=\"product-detail__mobile-buy-box\">
{% include 'components/organisms/buy-box/small-mobile-buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts,
'class': 'buy-box--mobile'
} %}
</div>
</div>
<div class=\"product-detail__cms-bottom\">
{% if slot_pdp_bottom is defined %}
<div class=\"spacing spacing--50\"></div>
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_bottom
} %}
{% else %}
<div class=\"spacing spacing--50\"></div>
{% include ('components/organisms/last-seen-product-slider/last-seen-product-slider.html.twig') with {
'headline': 'recently_viewed'|trans,
'headlineTag': 'h2',
'additionalClass': 'product-detail__last-seen'
} %}
{% endif %}
</div>
</div>
{% endblock %}
{% block offcanvasCart %}
{% include 'components/organisms/offcanvas-cart/offcanvas-cart.html.twig' %}
{% endblock %}
{% block modal %}
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/organisms/modal/modal.html.twig' with {
'modalId': 'inquiry'
} %}
{% block modalContent %}
{% set extraData = extraData|default({}) %}
{% set extraData = extraData|merge({'inquiryType': 'product'}) %}
{% set extraData = extraData|merge({'productSku': variant.sku}) %}
{% set extraData = extraData|merge({'products': structuredProducts|json_encode}) %}
<dynamic-form
service-base-url=\"{{ formservice }}\"
form-id=\"{{ cms_globals.slot_inquiry }}\"
extra-data=\"{{ extraData|json_encode }}\"
locale=\"{{ storeContext.localeInfo.currentLocale }}\"
frc-site-key=\"{{ frc_sitekey }}\"
></dynamic-form>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block javascripts %}
<script>
window.dataStore = window.dataStore || [];
window.dataStore.sku = {{ variant.sku|default('') }};
</script>
{{ parent() }}
{{ encore_entry_script_tags('product') }}
{% endblock %}
", "pages/product/get_detail.html.twig", "/var/www/html/templates/default/pages/product/get_detail.html.twig");
}
}
/* pages/product/get_detail.html.twig */
class __TwigTemplate_a036afd2f019ede9ab963721d351c017___2104544243 extends Template
{
private Source $source;
/**
* @var array<string, Template>
*/
private array $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'modalContent' => [$this, 'block_modalContent'],
];
}
protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
{
// line 442
return "components/organisms/modal/modal.html.twig";
}
protected function doDisplay(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "pages/product/get_detail.html.twig"));
$this->parent = $this->load("components/organisms/modal/modal.html.twig", 442);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 445
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_modalContent(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modalContent"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modalContent"));
// line 446
yield " ";
$context["extraData"] = ((array_key_exists("extraData", $context)) ? (Twig\Extension\CoreExtension::default((isset($context["extraData"]) || array_key_exists("extraData", $context) ? $context["extraData"] : (function () { throw new RuntimeError('Variable "extraData" does not exist.', 446, $this->source); })()), [])) : ([]));
// line 447
yield " ";
$context["extraData"] = Twig\Extension\CoreExtension::merge((isset($context["extraData"]) || array_key_exists("extraData", $context) ? $context["extraData"] : (function () { throw new RuntimeError('Variable "extraData" does not exist.', 447, $this->source); })()), ["inquiryType" => "product"]);
// line 448
yield " ";
$context["extraData"] = Twig\Extension\CoreExtension::merge((isset($context["extraData"]) || array_key_exists("extraData", $context) ? $context["extraData"] : (function () { throw new RuntimeError('Variable "extraData" does not exist.', 448, $this->source); })()), ["productSku" => CoreExtension::getAttribute($this->env, $this->source, (isset($context["variant"]) || array_key_exists("variant", $context) ? $context["variant"] : (function () { throw new RuntimeError('Variable "variant" does not exist.', 448, $this->source); })()), "sku", [], "any", false, false, false, 448)]);
// line 449
yield " ";
$context["extraData"] = Twig\Extension\CoreExtension::merge((isset($context["extraData"]) || array_key_exists("extraData", $context) ? $context["extraData"] : (function () { throw new RuntimeError('Variable "extraData" does not exist.', 449, $this->source); })()), ["products" => json_encode((isset($context["structuredProducts"]) || array_key_exists("structuredProducts", $context) ? $context["structuredProducts"] : (function () { throw new RuntimeError('Variable "structuredProducts" does not exist.', 449, $this->source); })()))]);
// line 450
yield "
<dynamic-form
service-base-url=\"";
// line 452
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["formservice"]) || array_key_exists("formservice", $context) ? $context["formservice"] : (function () { throw new RuntimeError('Variable "formservice" does not exist.', 452, $this->source); })()), "html", null, true);
yield "\"
form-id=\"";
// line 453
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["cms_globals"]) || array_key_exists("cms_globals", $context) ? $context["cms_globals"] : (function () { throw new RuntimeError('Variable "cms_globals" does not exist.', 453, $this->source); })()), "slot_inquiry", [], "any", false, false, false, 453), "html", null, true);
yield "\"
extra-data=\"";
// line 454
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(json_encode((isset($context["extraData"]) || array_key_exists("extraData", $context) ? $context["extraData"] : (function () { throw new RuntimeError('Variable "extraData" does not exist.', 454, $this->source); })())), "html", null, true);
yield "\"
locale=\"";
// line 455
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["storeContext"]) || array_key_exists("storeContext", $context) ? $context["storeContext"] : (function () { throw new RuntimeError('Variable "storeContext" does not exist.', 455, $this->source); })()), "localeInfo", [], "any", false, false, false, 455), "currentLocale", [], "any", false, false, false, 455), "html", null, true);
yield "\"
frc-site-key=\"";
// line 456
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["frc_sitekey"]) || array_key_exists("frc_sitekey", $context) ? $context["frc_sitekey"] : (function () { throw new RuntimeError('Variable "frc_sitekey" does not exist.', 456, $this->source); })()), "html", null, true);
yield "\"
></dynamic-form>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName(): string
{
return "pages/product/get_detail.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable(): bool
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo(): array
{
return array ( 2978 => 456, 2974 => 455, 2970 => 454, 2966 => 453, 2962 => 452, 2958 => 450, 2955 => 449, 2952 => 448, 2949 => 447, 2946 => 446, 2933 => 445, 2910 => 442, 2369 => 297, 2356 => 296, 2333 => 288, 1796 => 266, 1794 => 262, 1793 => 261, 1791 => 259, 1778 => 258, 1755 => 255, 1215 => 471, 1210 => 469, 1205 => 467, 1201 => 465, 1188 => 464, 1176 => 461, 1173 => 460, 1170 => 442, 1167 => 441, 1154 => 440, 1142 => 438, 1139 => 437, 1126 => 436, 1115 => 407, 1111 => 405, 1109 => 402, 1107 => 399, 1105 => 394, 1101 => 392, 1098 => 391, 1085 => 390, 1074 => 388, 1068 => 385, 1063 => 383, 1059 => 382, 1055 => 381, 1050 => 379, 1047 => 378, 1045 => 370, 1042 => 369, 1039 => 368, 1026 => 367, 1015 => 365, 1011 => 363, 1009 => 361, 1008 => 359, 1007 => 357, 1004 => 356, 1002 => 351, 999 => 350, 997 => 349, 994 => 348, 990 => 346, 988 => 344, 987 => 342, 986 => 340, 983 => 339, 981 => 331, 978 => 330, 975 => 329, 962 => 328, 951 => 326, 947 => 324, 945 => 322, 944 => 321, 940 => 319, 937 => 318, 924 => 317, 913 => 316, 910 => 315, 908 => 313, 907 => 312, 906 => 311, 903 => 310, 900 => 309, 887 => 308, 876 => 306, 863 => 305, 851 => 302, 848 => 301, 845 => 288, 843 => 287, 840 => 286, 837 => 285, 835 => 279, 833 => 276, 830 => 275, 828 => 274, 825 => 273, 812 => 272, 799 => 268, 797 => 256, 795 => 255, 793 => 238, 787 => 234, 774 => 233, 762 => 206, 760 => 205, 757 => 204, 744 => 203, 733 => 208, 730 => 203, 728 => 201, 727 => 200, 726 => 199, 724 => 198, 711 => 197, 697 => 118, 684 => 117, 668 => 114, 665 => 113, 652 => 112, 641 => 110, 639 => 107, 637 => 105, 624 => 104, 611 => 433, 608 => 432, 606 => 427, 603 => 426, 600 => 425, 598 => 423, 597 => 422, 594 => 421, 592 => 420, 586 => 416, 584 => 413, 583 => 412, 582 => 411, 581 => 410, 577 => 408, 575 => 390, 572 => 389, 570 => 367, 567 => 366, 565 => 328, 562 => 327, 559 => 317, 557 => 308, 554 => 307, 552 => 305, 549 => 304, 546 => 272, 543 => 271, 540 => 233, 538 => 232, 533 => 229, 530 => 228, 528 => 221, 526 => 220, 523 => 219, 520 => 218, 518 => 211, 516 => 210, 513 => 209, 511 => 197, 508 => 196, 506 => 194, 505 => 193, 504 => 192, 498 => 188, 490 => 182, 479 => 179, 476 => 178, 472 => 177, 467 => 174, 465 => 173, 462 => 172, 458 => 170, 456 => 166, 455 => 165, 451 => 163, 449 => 162, 446 => 161, 444 => 159, 443 => 158, 442 => 157, 438 => 155, 436 => 154, 435 => 151, 434 => 145, 433 => 139, 432 => 134, 429 => 133, 426 => 132, 423 => 131, 420 => 130, 418 => 129, 414 => 127, 412 => 126, 406 => 122, 403 => 117, 401 => 112, 398 => 111, 396 => 104, 390 => 100, 377 => 99, 365 => 96, 362 => 91, 349 => 90, 337 => 88, 335 => 79, 334 => 78, 333 => 77, 332 => 76, 331 => 75, 330 => 70, 328 => 69, 315 => 68, 302 => 66, 296 => 64, 283 => 63, 260 => 61, 248 => 58, 246 => 56, 244 => 55, 242 => 54, 237 => 53, 224 => 52, 213 => 48, 211 => 47, 198 => 46, 187 => 42, 186 => 41, 184 => 40, 171 => 39, 153 => 31, 149 => 30, 145 => 29, 141 => 28, 137 => 27, 133 => 26, 124 => 19, 122 => 17, 121 => 16, 120 => 15, 119 => 14, 118 => 13, 117 => 12, 116 => 11, 114 => 10, 111 => 9, 98 => 8, 87 => 1, 84 => 6, 81 => 4, 79 => 3, 77 => 2, 64 => 1,);
}
public function getSourceContext(): Source
{
return new Source("{% extends 'pages/base.html.twig' %}
{% set page_type_tracking = 'cp products' %}
{% if variant.attributes.centAmountGross is defined %}
{% set currentPrice = variant.attributes|default({'centAmountGross': 0}) %}
{% else %}
{% set currentPrice = {'centAmountGross': 0} %}
{% endif%}
{% block gtmDataLayer %}
{% set objectId = product.id|default ~'.' ~ variant.id|default %}
{% include('components/atoms/gtm-data-layer/gtm-data-layer.html.twig') with {
'product_id': variant.displaySku|default(''),
'objectId':objectId,
'product_name': variant.name|default(''),
'category': product.categoryName|default(''),
'product_price': currentPrice.centAmountGross|priceDefaultFormat|default(''),
'brand': variant.structuredData.brand.name.value|default(''),
'availability': variant.salesStatus == \"saleable\" ? \"yes\" : \"no\"
} %}
<script>
window.dataLayer.push({
'event': 'eec.detail_view',
'ecommerce': {
'detail': {
'actionField': {'list': 'cp products'},
'products': [{
'name': '{{ variant.name|default('') }}',
'id': '{{ variant.displaySku|default('') }}',
'objectId':'{{ objectId }}',
'price': '{{ currentPrice.centAmountGross|priceDefaultFormat }}',
'brand': '{{ variant.structuredData.brand.name.value|default('') }}',
'category': '{{ product.categoryName|default('') }}',
}]
}
},
})
</script>
{% endblock %}
{% block meta %}
{% include 'components/organisms/meta/meta.html.twig' with {
'metaInformation': variant.metaInformation|default(null),
'fallback': variant.name ~ 'meta_description_default'|trans,
} %}
{% endblock %}
{% block openGraph %}
{% include 'components/organisms/open-graph/open-graph.html.twig' with {
'openGraphInformation': variant.openGraphInformation|default(null)
} %}
{% endblock %}
{% block structuredData %}
{{ parent() }}
{% if variantStructuredData is defined %}
{% include('components/atoms/structured-data/structured-data.html.twig') with {
'structuredData': variantStructuredData|default,
} %}
{% endif %}
{% endblock %}
{% block title %}{{ variant.name|default(product.name) }}{% endblock %}
{% block stylesheets %}
{{ parent() }}
{{ encore_entry_link_tags('product') }}
{% endblock %}
{% block econdaTracing %}
{% include('components/atoms/econda-tracking/econda-tracking.html.twig') with{
'page_type_tracking': page_type_tracking,
'econdaSend': {
ec_Event: [
{
type: 'view',
pid: variant.displaySku|default('') ,
sku: variant.displaySku|default('') ,
name: variant.name|default('') ,
price: currentPrice.centAmountGross|priceDefaultFormat ,
group: variant.categoryName,
count: 1,
var1: null,
var2: null,
var3: null
}
]
},
} %}
{% endblock %}
{% block breadcrumb %}
{% include('components/molecules/breadcrumb/breadcrumb.html.twig') with {
'page': 'detail',
'backOffset': -1,
'showBackAlways': true
} %}
{% endblock %}
{% block content %}
<div class=\"product-detail\">
<div class=\"product-detail__data\">
<div class=\"product-detail__header\">
<div class=\"product-detail__headline\">
{% block productHeadline %}
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h1',
'text': variant.name,
'class': 'product-description__headline'
} %}
{% endblock %}
{% block productSku %}
<p class=\"product-description__sku\">
{{ 'product_sku'|trans }}: {{ variant.displaySku }}
</p>
{% endblock %}
{% block productFeedback %}
<div class=\"etrusted--product-stars\" >
<etrusted-product-review-list-widget-product-star-extension></etrusted-product-review-list-widget-product-star-extension>
</div>
{% endblock %}
</div>
<div class=\"product-detail__image\">
{% include('components/organisms/pdp-gallery/pdp-gallery.html.twig') %}
</div>
<div class=\"product-detail__description\">
{% set accessoriesSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY') ) %}
{% set sparepartSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ) %}
{% set mainSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::MAIN') ) %}
{% set serviceSkus = getCrossSellSkus(variant, constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SERVICE') ) %}
{% set productLinks = [
{slug: '#product_information', name: 'product_information'|trans, active: true, gtm: 'data-gtm-cp-pdp-go-to'},
{
slug: '#serviceProductsSlider',
name: 'product_service'|trans,
active: (serviceSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#product-compare',
name: 'compare_products'|trans,
active: (variant.attributes.comparable_articles is defined and variant.attributes.comparable_articles is not empty),
gtm: 'data-gtm-cp-pdp-go-to'
},
{
slug: '#accessoriesProductsSlider',
name: 'accessories_products_slider_headline'|trans,
active: (accessoriesSkus|length > 0) or (sparepartSkus|length > 0),
gtm: 'data-gtm-cp-pdp-go-to'
},
]|filter(v => v.active) %}
{% include 'components/organisms/product-description/product-description.html.twig' with {
'product': product,
'variant': variant
} %}
{% if productLinks|length > 0 %}
<div class=\"product-detail__actions\">
{% include('components/molecules/link-list/link-list.html.twig') with {
'entries': productLinks,
'class': 'link-list--pdp',
'classLink': 'text-link--arrow-left'
} %}
</div>
{% endif %}
{% if variant.ghsImages is defined and variant.ghsImages is not empty %}
<div class=\"product-detail__icons\">
<div class=\"js-icon-image-gallery product-detail__icons-slider icon-slider\">
<div class=\"swiper-wrapper\">
{% for icon in variant.ghsImages %}
<div class=\"swiper-slide\">
<img height=\"40\" src=\"{{ icon.uri| default}}\" alt=\"{{ icon.text| default }}\">
</div>
{% endfor %}
</div>
<div class=\"icon-slider__prev swiper-button-prev\" aria-hidden=\"true\"></div>
<div class=\"icon-slider__next swiper-button-next\" aria-hidden=\"true\"></div>
</div>
</div>
{% endif %}
</div>
</div>
<div class=\"product-detail__sidebar\">
<div class=\"product-detail__variant-anchor\" id=\"buy-box__variant-selection\"></div>
{% include 'components/organisms/variant-selection/variant-selection.html.twig' with {
'product': product,
'variant': variant,
} %}
<div class=\"product-detail__sticky-box\">
{% block buyBox %}
{% include 'components/organisms/buy-box/buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts
} %}
{% block buyBoxActions %}
<div class=\"buy-box__actions\">
{% include 'components/molecules/icon-links-actions/icon-links-actions.html.twig' %}
</div>
{% endblock %}
{% endblock %}
{% if slot_pdp_sidebar_default is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar_default,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
{% if slot_pdp_sidebar is defined %}
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_sidebar,
'componentConfig': {
'contact-box': {
modifier: 'detail js-cms-contact-box',
}
}
} %}
{% endif %}
</div>
</div>
<div class=\"product-detail__info\">
{% if not isPunchout %}
{% block econdaSlider %}
<div class=\"spacing spacing--30\"></div>
<div class=\"product-detail__econda-div\">
<div class=\"product-detail__econda-slider\" id=\"econdaProductsSlider\">
{% set econdaWidgets = [{
id:'econda_1',
widgetId: 'econda_product_widget_id'|trans,
headline: {
text:'similar_products_slider_headline'|trans,
},
component: ''
},
{
id:'econda_2',
widgetId: 'econda_product_buy_together_widget_id'|trans,
headline:{
text:'purchased_together_products_slider_headline'|trans,
},
component: ''
}
] %}
{% embed 'components/organisms/tabs/tabs.html.twig' with {
'entries': econdaWidgets
} %}
{% block entryContent %}
{% include ('components/organisms/econda-slider/econda-slider.html.twig') with {
'econdaContentIdentifier': 'productEcondaSilder',
'econdaProductId': variant.displaySku|default(''),
'widgetId': entry['widgetId'],
'headline': '',
'class': 'econda-slider-pdp'
} %}
{% endblock %}
{% endembed %}
</div>
</div>
{% endblock %}
{% endif %}
{% block additionalInformation %}
<div class=\"spacing spacing--30\"></div>
{% include 'pages/product/data-tabs.html.twig' %}
{% if variant.links.epaper is defined and variant.links.epaper|default is not empty %}
{% include 'components/atoms/text-link/text-link.html.twig'
with {
'class': 'text-link--arrow-right text-link--hide-in-print',
'href': variant.links.epaper|default,
'text': 'catalog_page'|trans,
'attributes': {
target: '_blank'
}
} %}
{% endif %}
<div class=\"spacing spacing--10\"></div>
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/atoms/button/button.html.twig'
with {
'class': 'text-link js-modal button--arrow-right text-link--arrow-right',
'type': 'button',
'attributes': {
'data-modal-id': 'inquiry'
}
} %}
{% block content %}
{{ 'expert_advice_questions'|trans }}
<span class=\"text-link__arrow\"></span>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block tenderText %}
{% endblock %}
{% block compare %}
{% if variant.attributes.comparable_articles is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
{% include ('components/organisms/product-compare/product-compare.html.twig') with {
\"productSku\": variant.sku,
\"compareSkus\":variant.attributes.comparable_articles
} %}
{% endif%}
{% endblock %}
{% block slot_center %}
{% if slot_pdp_center is defined %}
<div class=\"spacing spacing--50 spacing--hide-in-print\"></div>
<div class=\"product-detail__cms-center\">
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_center
} %}
</div>
{% endif%}
{% endblock %}
{% block extraProductListing %}
{% if serviceSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'product_service'|trans,
'class': 'headline--section',
'attributes': {
'id':'serviceProductsSlider'
}
} %}
<div class=\"product-detail__service-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': serviceSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{%endif%}
{% if mainSkus is not empty%}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'main_products'|trans,
'class': 'headline--section'
} %}
<div class=\"product-detail__main-products\">
{% include 'components/organisms/related-products/related-products.html.twig' with {
'class': '',
'skus': mainSkus,
'api_url': path('app_get_products') ,
'current_language': storeContext.localeInfo.currentLocale,
} %}
</div>
{% endif %}
{% endblock %}
{% block accessoriesProductsSlider %}
{% if sparepartSkus is not empty or accessoriesSkus is not empty %}
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'accessories_products_slider_headline'|trans,
'class': 'headline--section',
'attributes': {
'id':'accessoriesProductsSlider'
}
} %}
<related-products-tabs
tab-entries=\"{{ getCrossSellEntries(variant, [constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::ACCESSORY'),constant('App\\\\Twig\\\\Functions\\\\CrossSellExtension::SPAREPART') ])|json_encode }}\"
css-class=\"related-products-tabs\"
image-service=\"{{ imageservice }}\"
api-url=\"{{ path('app_get_products')}}\"
add-product-url=\"{{ path('checkout_cart_add_line_item') }}\"
id=\"pdp-related-products\"
current-language=\"{{ storeContext.localeInfo.currentLocale}}\"
product-component-class=\"product-component\"></related-products-tabs>
{% endif %}
{% endblock %}
{% block feedback %}
{% if 'product_feedback_widget_id'|transFallbackEmptyText is not empty and not isPunchout %}
<div id=\"feedback\" class=\"product-detail__feedback etrusted-js etrusted--invisible\">
<div class=\"spacing spacing--50\"></div>
{% include('components/atoms/headline/headline.html.twig') with {
'headlineTag': 'h2',
'text': 'customer_reviews'|trans,
'class': 'headline--section'
} %}
{% include 'components/atoms/etrusted/etrusted.html.twig' with {
'type':'product',
'class': 'etrusted--product-feedback',
'sku':variant.sku ,
'widget_id':'product_feedback_widget_id'|trans
} %}
</div>
{% endif %}
{%endblock%}
</div>
<div class=\"product-detail__mobile-buy-box\">
{% include 'components/organisms/buy-box/small-mobile-buy-box.html.twig' with {
'product': product,
'variant': variant,
'structuredProducts': structuredProducts,
'class': 'buy-box--mobile'
} %}
</div>
</div>
<div class=\"product-detail__cms-bottom\">
{% if slot_pdp_bottom is defined %}
<div class=\"spacing spacing--50\"></div>
{% include 'components/organisms/storyblok/storyblok.html.twig' with {
'componentData': slot_pdp_bottom
} %}
{% else %}
<div class=\"spacing spacing--50\"></div>
{% include ('components/organisms/last-seen-product-slider/last-seen-product-slider.html.twig') with {
'headline': 'recently_viewed'|trans,
'headlineTag': 'h2',
'additionalClass': 'product-detail__last-seen'
} %}
{% endif %}
</div>
</div>
{% endblock %}
{% block offcanvasCart %}
{% include 'components/organisms/offcanvas-cart/offcanvas-cart.html.twig' %}
{% endblock %}
{% block modal %}
{% if cms_globals.slot_inquiry is defined %}
{% embed 'components/organisms/modal/modal.html.twig' with {
'modalId': 'inquiry'
} %}
{% block modalContent %}
{% set extraData = extraData|default({}) %}
{% set extraData = extraData|merge({'inquiryType': 'product'}) %}
{% set extraData = extraData|merge({'productSku': variant.sku}) %}
{% set extraData = extraData|merge({'products': structuredProducts|json_encode}) %}
<dynamic-form
service-base-url=\"{{ formservice }}\"
form-id=\"{{ cms_globals.slot_inquiry }}\"
extra-data=\"{{ extraData|json_encode }}\"
locale=\"{{ storeContext.localeInfo.currentLocale }}\"
frc-site-key=\"{{ frc_sitekey }}\"
></dynamic-form>
{% endblock %}
{% endembed %}
{% endif %}
{% endblock %}
{% block javascripts %}
<script>
window.dataStore = window.dataStore || [];
window.dataStore.sku = {{ variant.sku|default('') }};
</script>
{{ parent() }}
{{ encore_entry_script_tags('product') }}
{% endblock %}
", "pages/product/get_detail.html.twig", "/var/www/html/templates/default/pages/product/get_detail.html.twig");
}
}