<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
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;
/* product/index.html.twig */
class __TwigTemplate_107778ef668f0abde2106e97076a899f extends Template
{
private $source;
private $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'PAGE_CSS' => [$this, 'block_PAGE_CSS'],
'CONTENT_MID' => [$this, 'block_CONTENT_MID'],
'PAGE_JS' => [$this, 'block_PAGE_JS'],
];
$this->sandbox = $this->env->getExtension('\Twig\Extension\SandboxExtension');
$this->checkSecurity();
}
protected function doGetParent(array $context)
{
// line 1
return "layout/app.html.twig";
}
protected function doDisplay(array $context, array $blocks = [])
{
$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", "product/index.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "product/index.html.twig"));
$this->parent = $this->loadTemplate("layout/app.html.twig", "product/index.html.twig", 1);
$this->parent->display($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 3
public function block_PAGE_CSS($context, array $blocks = [])
{
$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", "PAGE_CSS"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "PAGE_CSS"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
}
// line 6
public function block_CONTENT_MID($context, array $blocks = [])
{
$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_MID"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "CONTENT_MID"));
// line 7
echo " <div x-data=\"{ showMobileFilter: false }\">
<div x-cloak x-show=\"showMobileFilter\" class=\"relative z-40 lg:hidden\" role=\"dialog\" aria-modal=\"true\">
<div x-transition:enter=\"transition-opacity ease-linear duration-300\"
x-transition:enter-start=\"opacity-0\"
x-transition:enter-end=\"opacity-100\"
x-transition:leave=\"transition-opacity ease-linear duration-300\"
x-transition:leave-start=\"opacity-100\"
x-transition:leave-end=\"opacity-0\"
class=\"fixed inset-0 bg-black bg-opacity-25\"></div>
<div class=\"fixed inset-0 z-40 flex\">
<div x-transition:enter=\"transition ease-in-out duration-300 transform\"
x-transition:enter-start=\"translate-x-full\"
x-transition:enter-end=\"translate-x-0\"
x-transition:leave=\"transition ease-in-out duration-300 transform\"
x-transition:leave-start=\"translate-x-0\"
x-transition:leave-end=\"translate-x-full\"
class=\"relative ml-auto flex h-full w-full max-w-xs flex-col overflow-y-auto bg-white py-4 pb-6 shadow-xl\">
<div class=\"flex items-center justify-between px-4\">
<h2 class=\"text-lg font-medium text-gray-900\">Filters</h2>
<button @click=\"showMobileFilter = false\" type=\"button\" class=\"-mr-2 flex h-10 w-10 items-center justify-center p-2 text-gray-400 hover:text-gray-500\">
<span class=\"sr-only\">Close menu</span>
<!-- Heroicon name: outline/x-mark -->
<svg class=\"h-6 w-6\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" aria-hidden=\"true\">
<path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\" />
</svg>
</button>
</div>
<!-- Filters -->
<form id=\"mobileFilters\" class=\"mt-4\">
<div class=\"space-y-2 px-4\">
";
// line 42
if ((twig_length_filter($this->env, (isset($context["currentFilter"]) || array_key_exists("currentFilter", $context) ? $context["currentFilter"] : (function () { throw new RuntimeError('Variable "currentFilter" does not exist.', 42, $this->source); })())) > 0)) {
// line 43
echo " ";
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable((isset($context["currentFilter"]) || array_key_exists("currentFilter", $context) ? $context["currentFilter"] : (function () { throw new RuntimeError('Variable "currentFilter" does not exist.', 43, $this->source); })()));
foreach ($context['_seq'] as $context["key"] => $context["filter"]) {
// line 44
echo " ";
if (( !(null === $context["filter"]) && !twig_test_empty($context["filter"]))) {
// line 45
echo " ";
if (twig_test_iterable($context["filter"])) {
// line 46
echo " ";
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable($context["filter"]);
foreach ($context['_seq'] as $context["_key"] => $context["f"]) {
// line 47
echo " <button data-filter=\"";
echo twig_escape_filter($this->env, twig_replace_filter(($this->sandbox->ensureToStringAllowed($context["key"], 47, $this->source) . $this->sandbox->ensureToStringAllowed($context["f"], 47, $this->source)), [" " => ""]), "html", null, true);
echo "\" type=\"button\" class=\"removeMobileFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
";
// line 54
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, ("general.filter." . $this->sandbox->ensureToStringAllowed($context["key"], 54, $this->source)))), "html", null, true);
echo ": ";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, $this->sandbox->ensureToStringAllowed($context["f"], 54, $this->source))), "html", null, true);
echo "
</span>
</button>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['f'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 58
echo " ";
} else {
// line 59
echo " <button data-filter=\"";
echo twig_escape_filter($this->env, twig_replace_filter(($this->sandbox->ensureToStringAllowed($context["key"], 59, $this->source) . $this->sandbox->ensureToStringAllowed($context["filter"], 59, $this->source)), [" " => ""]), "html", null, true);
echo "\" type=\"button\" class=\"removeMobileFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
";
// line 66
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, ("general.filter." . $this->sandbox->ensureToStringAllowed($context["key"], 66, $this->source)))), "html", null, true);
echo ": ";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, $this->sandbox->ensureToStringAllowed($context["filter"], 66, $this->source))), "html", null, true);
echo "
</span>
</button>
";
}
// line 70
echo " ";
}
// line 71
echo " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['key'], $context['filter'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 72
echo " ";
}
// line 73
echo " </div>
<div class=\"mt-4\">
<div class=\"divide-y divide-gray-200\">
";
// line 77
if ((twig_length_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["filterDefinition"]) || array_key_exists("filterDefinition", $context) ? $context["filterDefinition"] : (function () { throw new RuntimeError('Variable "filterDefinition" does not exist.', 77, $this->source); })()), "filters", [], "any", false, false, true, 77)) > 0)) {
// line 78
echo " ";
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["filterDefinition"]) || array_key_exists("filterDefinition", $context) ? $context["filterDefinition"] : (function () { throw new RuntimeError('Variable "filterDefinition" does not exist.', 78, $this->source); })()), "filters", [], "any", false, false, true, 78));
foreach ($context['_seq'] as $context["_key"] => $context["filter"]) {
// line 79
echo " ";
$context["filterMarkup"] = twig_get_attribute($this->env, $this->source, (isset($context["filterService"]) || array_key_exists("filterService", $context) ? $context["filterService"] : (function () { throw new RuntimeError('Variable "filterService" does not exist.', 79, $this->source); })()), "filterFrontend", [0 => $context["filter"], 1 => (isset($context["productListing"]) || array_key_exists("productListing", $context) ? $context["productListing"] : (function () { throw new RuntimeError('Variable "productListing" does not exist.', 79, $this->source); })()), 2 => (isset($context["currentFilter"]) || array_key_exists("currentFilter", $context) ? $context["currentFilter"] : (function () { throw new RuntimeError('Variable "currentFilter" does not exist.', 79, $this->source); })())], "method", false, false, true, 79);
// line 80
echo " ";
echo $this->sandbox->ensureToStringAllowed((isset($context["filterMarkup"]) || array_key_exists("filterMarkup", $context) ? $context["filterMarkup"] : (function () { throw new RuntimeError('Variable "filterMarkup" does not exist.', 80, $this->source); })()), 80, $this->source);
echo "
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['filter'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 82
echo " ";
}
// line 83
echo " </div>
</div>
</form>
</div>
</div>
</div>
<nav aria-label=\"Breadcrumb\" class=\"pt-4\">
<ol role=\"list\" class=\"mx-auto flex max-w-2xl items-center space-x-2 px-4 sm:px-6 lg:max-w-7xl lg:px-8\">
<li>
<div class=\"flex items-center\">
<a href=\"/\" class=\"mr-2 text-sm font-medium text-gray-900\">Home</a>
<svg width=\"16\" height=\"20\" viewBox=\"0 0 16 20\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" class=\"h-5 w-4 text-gray-300\">
<path d=\"M5.697 4.34L8.98 16.532h1.327L7.025 4.341H5.697z\" />
</svg>
</div>
</li>
<li class=\"text-sm\">
<a href=\"";
// line 102
echo twig_escape_filter($this->env, $this->sandbox->ensureToStringAllowed((isset($context["navStartNode"]) || array_key_exists("navStartNode", $context) ? $context["navStartNode"] : (function () { throw new RuntimeError('Variable "navStartNode" does not exist.', 102, $this->source); })()), 102, $this->source), "html", null, true);
echo "\" aria-current=\"page\" class=\"font-medium text-brand-600 hover:text-gray-600\">";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Produkte"), "html", null, true);
echo "</a>
</li>
</ol>
</nav>
<main class=\"mx-auto max-w-2xl px-4 lg:max-w-7xl lg:px-8\">
<form id=\"filters\">
<div class=\"pt-12 pb-24 lg:grid lg:grid-cols-3 lg:gap-x-8 xl:grid-cols-4\">
<aside>
<div class=\"flex items-baseline justify-between hidden lg:block\">
<h3 class=\"text-2xl mb-4 font-bold tracking-tight text-gray-900\">Filter</h3>
</div>
<div class=\"space-y-2 hidden lg:block\">
";
// line 116
if ((twig_length_filter($this->env, (isset($context["currentFilter"]) || array_key_exists("currentFilter", $context) ? $context["currentFilter"] : (function () { throw new RuntimeError('Variable "currentFilter" does not exist.', 116, $this->source); })())) > 0)) {
// line 117
echo " ";
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable((isset($context["currentFilter"]) || array_key_exists("currentFilter", $context) ? $context["currentFilter"] : (function () { throw new RuntimeError('Variable "currentFilter" does not exist.', 117, $this->source); })()));
foreach ($context['_seq'] as $context["key"] => $context["filter"]) {
// line 118
echo " ";
if ((( !(null === $context["filter"]) && !twig_test_empty($context["filter"])) && !twig_in_filter($context["key"], [0 => "productGroup", 1 => "parentCategoryIds", 2 => "materialThickness"]))) {
// line 119
echo " ";
if (twig_test_iterable($context["filter"])) {
// line 120
echo " ";
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable($context["filter"]);
foreach ($context['_seq'] as $context["_key"] => $context["f"]) {
// line 121
echo " <button data-filter=\"";
echo twig_escape_filter($this->env, twig_replace_filter(($this->sandbox->ensureToStringAllowed($context["key"], 121, $this->source) . $this->sandbox->ensureToStringAllowed($context["f"], 121, $this->source)), [" " => ""]), "html", null, true);
echo "\" type=\"button\" class=\"removeFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
";
// line 128
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, ("general.filter." . $this->sandbox->ensureToStringAllowed($context["key"], 128, $this->source)))), "html", null, true);
echo ": ";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, $this->sandbox->ensureToStringAllowed($context["f"], 128, $this->source))), "html", null, true);
echo "
</span>
</button>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['f'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 132
echo " ";
} else {
// line 133
echo " <button data-filter=\"";
echo twig_escape_filter($this->env, twig_replace_filter(($this->sandbox->ensureToStringAllowed($context["key"], 133, $this->source) . $this->sandbox->ensureToStringAllowed($context["filter"], 133, $this->source)), [" " => ""]), "html", null, true);
echo "\" type=\"button\" class=\"removeFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
";
// line 140
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, ("general.filter." . $this->sandbox->ensureToStringAllowed($context["key"], 140, $this->source)))), "html", null, true);
echo ": ";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans(twig_lower_filter($this->env, $this->sandbox->ensureToStringAllowed($context["filter"], 140, $this->source))), "html", null, true);
echo "
</span>
</button>
";
}
// line 144
echo " ";
}
// line 145
echo " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['key'], $context['filter'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 146
echo " ";
}
// line 147
echo " </div>
<div class=\"mt-4 hidden lg:block\">
<div class=\"divide-y divide-gray-200\">
";
// line 151
if ((twig_length_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["filterDefinition"]) || array_key_exists("filterDefinition", $context) ? $context["filterDefinition"] : (function () { throw new RuntimeError('Variable "filterDefinition" does not exist.', 151, $this->source); })()), "filters", [], "any", false, false, true, 151)) > 0)) {
// line 152
echo " ";
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["filterDefinition"]) || array_key_exists("filterDefinition", $context) ? $context["filterDefinition"] : (function () { throw new RuntimeError('Variable "filterDefinition" does not exist.', 152, $this->source); })()), "filters", [], "any", false, false, true, 152));
foreach ($context['_seq'] as $context["_key"] => $context["filter"]) {
// line 153
echo " ";
$context["filterMarkup"] = twig_get_attribute($this->env, $this->source, (isset($context["filterService"]) || array_key_exists("filterService", $context) ? $context["filterService"] : (function () { throw new RuntimeError('Variable "filterService" does not exist.', 153, $this->source); })()), "filterFrontend", [0 => $context["filter"], 1 => (isset($context["productListing"]) || array_key_exists("productListing", $context) ? $context["productListing"] : (function () { throw new RuntimeError('Variable "productListing" does not exist.', 153, $this->source); })()), 2 => (isset($context["currentFilter"]) || array_key_exists("currentFilter", $context) ? $context["currentFilter"] : (function () { throw new RuntimeError('Variable "currentFilter" does not exist.', 153, $this->source); })())], "method", false, false, true, 153);
// line 154
echo " ";
echo $this->sandbox->ensureToStringAllowed((isset($context["filterMarkup"]) || array_key_exists("filterMarkup", $context) ? $context["filterMarkup"] : (function () { throw new RuntimeError('Variable "filterMarkup" does not exist.', 154, $this->source); })()), 154, $this->source);
echo "
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['filter'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 156
echo " ";
}
// line 157
echo " </div>
</div>
</aside>
<section aria-labelledby=\"product-heading\" class=\"mt-6 lg:col-span-2 lg:mt-0 xl:col-span-3\">
<div class=\"flex justify-between mb-4 items-center\">
<h3 class=\"text-2xl font-bold tracking-tight text-gray-900\">";
// line 163
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Produkte"), "html", null, true);
echo "</h3>
<div class=\"flex items-center\">
<button @click=\"showMobileFilter = true\" type=\"button\" class=\"mr-4 p-2 text-gray-400 hover:text-gray-500 sm:ml-6 lg:hidden\">
<span class=\"sr-only\">Filters</span>
<svg class=\"h-5 w-5\" aria-hidden=\"true\" viewBox=\"0 0 20 20\" fill=\"currentColor\">
<path fill-rule=\"evenodd\" d=\"M2.628 1.601C5.028 1.206 7.49 1 10 1s4.973.206 7.372.601a.75.75 0 01.628.74v2.288a2.25 2.25 0 01-.659 1.59l-4.682 4.683a2.25 2.25 0 00-.659 1.59v3.037c0 .684-.31 1.33-.844 1.757l-1.937 1.55A.75.75 0 018 18.25v-5.757a2.25 2.25 0 00-.659-1.591L2.659 6.22A2.25 2.25 0 012 4.629V2.34a.75.75 0 01.628-.74z\" clip-rule=\"evenodd\" />
</svg>
</button>
<div class=\"relative inline-block text-left\" x-data=\"{ isOpen: false }\">
<div>
<button type=\"button\" x-on:click=\"isOpen = ! isOpen\" class=\"inline-flex w-full justify-center py-2 px-3 bg-gray-100 text-sm font-semibold text-gray-900 space-x-1.5 rounded-md focus:outline-none\" id=\"menu-button\" aria-expanded=\"true\" aria-haspopup=\"true\">
<span>";
// line 174
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Sortieren nach"), "html", null, true);
echo "</span>
<svg class=\"-mr-1 h-5 w-5 text-gray-400\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">
<path fill-rule=\"evenodd\" d=\"M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z\" clip-rule=\"evenodd\" />
</svg>
</button>
</div>
<!--
Dropdown menu, show/hide based on menu state.
Entering: \"transition ease-out duration-100\"
From: \"transform opacity-0 scale-95\"
To: \"transform opacity-100 scale-100\"
Leaving: \"transition ease-in duration-75\"
From: \"transform opacity-100 scale-100\"
To: \"transform opacity-0 scale-95\"
-->
<div
x-cloak x-show=\"isOpen\"
@click.outside=\"isOpen = false\"
x-transition:enter=\"transition ease-out duration-100\"
x-transition:enter-start=\"transform opacity-0 scale-95\"
x-transition:enter-end=\"transform opacity-0 scale-100\"
x-transition:leave=\"transition ease-in duration-75\"
x-transition:leave-start=\"transform opacity-100 scale-100\"
x-transition:leave-end=\"transform opacity-0 scale-95\"
class=\"absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-gray-50 shadow-lg focus:outline-none\" role=\"menu\" aria-orientation=\"vertical\" aria-labelledby=\"menu-button\" tabindex=\"-1\">
<div class=\"py-1\" role=\"none\">
<!--<button name=\"sort\" value=\"name-asc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-0\">";
// line 202
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Artikelname"), "html", null, true);
echo "</button>-->
<button name=\"sort\" value=\"code-asc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">";
// line 203
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Produktcode (aufsteigend)"), "html", null, true);
echo "</button>
<button name=\"sort\" value=\"code-desc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">";
// line 204
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Produktcode (absteigend)"), "html", null, true);
echo "</button>
<button name=\"sort\" value=\"materialThickness-asc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">";
// line 205
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Materialstärke (aufsteigend)"), "html", null, true);
echo "</button>
<button name=\"sort\" value=\"materialThickness-desc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">";
// line 206
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Materialstärke (absteigend)"), "html", null, true);
echo "</button>
</div>
</div>
</div>
</div>
</div>
<div class=\"grid grid-cols-1 gap-y-4 sm:grid-cols-3 sm:gap-x-6 sm:gap-y-10 lg:gap-x-8 xl:grid-cols-4\">
";
// line 214
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable((isset($context["results"]) || array_key_exists("results", $context) ? $context["results"] : (function () { throw new RuntimeError('Variable "results" does not exist.', 214, $this->source); })()));
$context['_iterated'] = false;
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["item"]) {
// line 215
echo " ";
$this->loadTemplate("product/product_teaser.html.twig", "product/index.html.twig", 215)->display(twig_array_merge($context, ["product" => $context["item"]]));
// line 216
echo " ";
$context['_iterated'] = true;
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
if (!$context['_iterated']) {
// line 217
echo " <div class=\"p-4 my-4 text-sm text-brand-600 rounded-lg bg-brand-50 col-span-4\" role=\"alert\">
";
// line 218
echo "Leider wurden keine Ergebnisse gefunden";
echo "
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['item'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 221
echo " </div>
<div class=\"mt-10\">
";
// line 223
$this->loadTemplate("_partials/pagination.html.twig", "product/index.html.twig", 223)->display($context);
// line 224
echo " </div>
</section>
</div>
</form>
</main>
</div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
}
// line 232
public function block_PAGE_JS($context, array $blocks = [])
{
$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", "PAGE_JS"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "PAGE_JS"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
}
public function getTemplateName()
{
return "product/index.html.twig";
}
public function isTraitable()
{
return false;
}
public function getDebugInfo()
{
return array ( 523 => 232, 507 => 224, 505 => 223, 501 => 221, 492 => 218, 489 => 217, 476 => 216, 473 => 215, 455 => 214, 444 => 206, 440 => 205, 436 => 204, 432 => 203, 428 => 202, 397 => 174, 383 => 163, 375 => 157, 372 => 156, 363 => 154, 360 => 153, 355 => 152, 353 => 151, 347 => 147, 344 => 146, 338 => 145, 335 => 144, 326 => 140, 315 => 133, 312 => 132, 300 => 128, 289 => 121, 284 => 120, 281 => 119, 278 => 118, 273 => 117, 271 => 116, 252 => 102, 231 => 83, 228 => 82, 219 => 80, 216 => 79, 211 => 78, 209 => 77, 203 => 73, 200 => 72, 194 => 71, 191 => 70, 182 => 66, 171 => 59, 168 => 58, 156 => 54, 145 => 47, 140 => 46, 137 => 45, 134 => 44, 129 => 43, 127 => 42, 90 => 7, 80 => 6, 62 => 3, 39 => 1,);
}
public function getSourceContext()
{
return new Source("{% extends 'layout/app.html.twig' %}
{% block PAGE_CSS %}
{% endblock %}
{% block CONTENT_MID %}
<div x-data=\"{ showMobileFilter: false }\">
<div x-cloak x-show=\"showMobileFilter\" class=\"relative z-40 lg:hidden\" role=\"dialog\" aria-modal=\"true\">
<div x-transition:enter=\"transition-opacity ease-linear duration-300\"
x-transition:enter-start=\"opacity-0\"
x-transition:enter-end=\"opacity-100\"
x-transition:leave=\"transition-opacity ease-linear duration-300\"
x-transition:leave-start=\"opacity-100\"
x-transition:leave-end=\"opacity-0\"
class=\"fixed inset-0 bg-black bg-opacity-25\"></div>
<div class=\"fixed inset-0 z-40 flex\">
<div x-transition:enter=\"transition ease-in-out duration-300 transform\"
x-transition:enter-start=\"translate-x-full\"
x-transition:enter-end=\"translate-x-0\"
x-transition:leave=\"transition ease-in-out duration-300 transform\"
x-transition:leave-start=\"translate-x-0\"
x-transition:leave-end=\"translate-x-full\"
class=\"relative ml-auto flex h-full w-full max-w-xs flex-col overflow-y-auto bg-white py-4 pb-6 shadow-xl\">
<div class=\"flex items-center justify-between px-4\">
<h2 class=\"text-lg font-medium text-gray-900\">Filters</h2>
<button @click=\"showMobileFilter = false\" type=\"button\" class=\"-mr-2 flex h-10 w-10 items-center justify-center p-2 text-gray-400 hover:text-gray-500\">
<span class=\"sr-only\">Close menu</span>
<!-- Heroicon name: outline/x-mark -->
<svg class=\"h-6 w-6\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" aria-hidden=\"true\">
<path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\" />
</svg>
</button>
</div>
<!-- Filters -->
<form id=\"mobileFilters\" class=\"mt-4\">
<div class=\"space-y-2 px-4\">
{% if(currentFilter|length > 0) %}
{% for key,filter in currentFilter %}
{% if(filter is not null and filter is not empty) %}
{% if filter is iterable %}
{% for f in filter %}
<button data-filter=\"{{ (key ~ f)|replace({' ': ''}) }}\" type=\"button\" class=\"removeMobileFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
{{ ('general.filter.' ~ key)|lower|trans }}: {{ (f)|lower|trans }}
</span>
</button>
{% endfor %}
{% else %}
<button data-filter=\"{{ (key ~ filter)|replace({' ': ''}) }}\" type=\"button\" class=\"removeMobileFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
{{ ('general.filter.' ~ key)|lower|trans }}: {{ (filter)|lower|trans }}
</span>
</button>
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
</div>
<div class=\"mt-4\">
<div class=\"divide-y divide-gray-200\">
{% if(filterDefinition.filters|length > 0) %}
{% for filter in filterDefinition.filters %}
{% set filterMarkup = filterService.filterFrontend(filter, productListing, currentFilter) %}
{{ filterMarkup | raw }}
{% endfor %}
{% endif %}
</div>
</div>
</form>
</div>
</div>
</div>
<nav aria-label=\"Breadcrumb\" class=\"pt-4\">
<ol role=\"list\" class=\"mx-auto flex max-w-2xl items-center space-x-2 px-4 sm:px-6 lg:max-w-7xl lg:px-8\">
<li>
<div class=\"flex items-center\">
<a href=\"/\" class=\"mr-2 text-sm font-medium text-gray-900\">Home</a>
<svg width=\"16\" height=\"20\" viewBox=\"0 0 16 20\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" class=\"h-5 w-4 text-gray-300\">
<path d=\"M5.697 4.34L8.98 16.532h1.327L7.025 4.341H5.697z\" />
</svg>
</div>
</li>
<li class=\"text-sm\">
<a href=\"{{ navStartNode }}\" aria-current=\"page\" class=\"font-medium text-brand-600 hover:text-gray-600\">{{ 'Produkte' | trans }}</a>
</li>
</ol>
</nav>
<main class=\"mx-auto max-w-2xl px-4 lg:max-w-7xl lg:px-8\">
<form id=\"filters\">
<div class=\"pt-12 pb-24 lg:grid lg:grid-cols-3 lg:gap-x-8 xl:grid-cols-4\">
<aside>
<div class=\"flex items-baseline justify-between hidden lg:block\">
<h3 class=\"text-2xl mb-4 font-bold tracking-tight text-gray-900\">Filter</h3>
</div>
<div class=\"space-y-2 hidden lg:block\">
{% if(currentFilter|length > 0) %}
{% for key,filter in currentFilter %}
{% if(filter is not null and filter is not empty and key not in [\"productGroup\", \"parentCategoryIds\", \"materialThickness\"]) %}
{% if filter is iterable %}
{% for f in filter %}
<button data-filter=\"{{ (key ~ f)|replace({' ': ''}) }}\" type=\"button\" class=\"removeFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
{{ ('general.filter.' ~ key)|lower|trans }}: {{ (f)|lower|trans }}
</span>
</button>
{% endfor %}
{% else %}
<button data-filter=\"{{ (key ~ filter)|replace({' ': ''}) }}\" type=\"button\" class=\"removeFilter w-full inline-flex items-center py-2 px-3 bg-gray-100 hover:bg-brand-50 text-sm font-medium text-gray-600 hover:text-brand-600 border border-transparent hover:border-brand-600 rounded-md space-x-2 cursor-pointer select-none transition ease duration-300 group text-left\">
<span class=\"flex-shrink-0\">
<svg class=\"h-2 w-2\" stroke=\"currentColor\" fill=\"none\" viewBox=\"0 0 8 8\">
<path stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M1 1l6 6m0-6L1 7\" />
</svg>
</span>
<span>
{{ ('general.filter.' ~ key)|lower|trans }}: {{ (filter)|lower|trans }}
</span>
</button>
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
</div>
<div class=\"mt-4 hidden lg:block\">
<div class=\"divide-y divide-gray-200\">
{% if(filterDefinition.filters|length > 0) %}
{% for filter in filterDefinition.filters %}
{% set filterMarkup = filterService.filterFrontend(filter, productListing, currentFilter) %}
{{ filterMarkup | raw }}
{% endfor %}
{% endif %}
</div>
</div>
</aside>
<section aria-labelledby=\"product-heading\" class=\"mt-6 lg:col-span-2 lg:mt-0 xl:col-span-3\">
<div class=\"flex justify-between mb-4 items-center\">
<h3 class=\"text-2xl font-bold tracking-tight text-gray-900\">{{ 'Produkte' | trans }}</h3>
<div class=\"flex items-center\">
<button @click=\"showMobileFilter = true\" type=\"button\" class=\"mr-4 p-2 text-gray-400 hover:text-gray-500 sm:ml-6 lg:hidden\">
<span class=\"sr-only\">Filters</span>
<svg class=\"h-5 w-5\" aria-hidden=\"true\" viewBox=\"0 0 20 20\" fill=\"currentColor\">
<path fill-rule=\"evenodd\" d=\"M2.628 1.601C5.028 1.206 7.49 1 10 1s4.973.206 7.372.601a.75.75 0 01.628.74v2.288a2.25 2.25 0 01-.659 1.59l-4.682 4.683a2.25 2.25 0 00-.659 1.59v3.037c0 .684-.31 1.33-.844 1.757l-1.937 1.55A.75.75 0 018 18.25v-5.757a2.25 2.25 0 00-.659-1.591L2.659 6.22A2.25 2.25 0 012 4.629V2.34a.75.75 0 01.628-.74z\" clip-rule=\"evenodd\" />
</svg>
</button>
<div class=\"relative inline-block text-left\" x-data=\"{ isOpen: false }\">
<div>
<button type=\"button\" x-on:click=\"isOpen = ! isOpen\" class=\"inline-flex w-full justify-center py-2 px-3 bg-gray-100 text-sm font-semibold text-gray-900 space-x-1.5 rounded-md focus:outline-none\" id=\"menu-button\" aria-expanded=\"true\" aria-haspopup=\"true\">
<span>{{ 'Sortieren nach' | trans }}</span>
<svg class=\"-mr-1 h-5 w-5 text-gray-400\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">
<path fill-rule=\"evenodd\" d=\"M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z\" clip-rule=\"evenodd\" />
</svg>
</button>
</div>
<!--
Dropdown menu, show/hide based on menu state.
Entering: \"transition ease-out duration-100\"
From: \"transform opacity-0 scale-95\"
To: \"transform opacity-100 scale-100\"
Leaving: \"transition ease-in duration-75\"
From: \"transform opacity-100 scale-100\"
To: \"transform opacity-0 scale-95\"
-->
<div
x-cloak x-show=\"isOpen\"
@click.outside=\"isOpen = false\"
x-transition:enter=\"transition ease-out duration-100\"
x-transition:enter-start=\"transform opacity-0 scale-95\"
x-transition:enter-end=\"transform opacity-0 scale-100\"
x-transition:leave=\"transition ease-in duration-75\"
x-transition:leave-start=\"transform opacity-100 scale-100\"
x-transition:leave-end=\"transform opacity-0 scale-95\"
class=\"absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-gray-50 shadow-lg focus:outline-none\" role=\"menu\" aria-orientation=\"vertical\" aria-labelledby=\"menu-button\" tabindex=\"-1\">
<div class=\"py-1\" role=\"none\">
<!--<button name=\"sort\" value=\"name-asc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-0\">{{ 'Artikelname' | trans }}</button>-->
<button name=\"sort\" value=\"code-asc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">{{ 'Produktcode (aufsteigend)' | trans }}</button>
<button name=\"sort\" value=\"code-desc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">{{ 'Produktcode (absteigend)' | trans }}</button>
<button name=\"sort\" value=\"materialThickness-asc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">{{ 'Materialstärke (aufsteigend)' | trans }}</button>
<button name=\"sort\" value=\"materialThickness-desc\" class=\"w-full block py-2 px-4 hover:bg-gray-100 text-sm text-gray-700 hover:text-gray-900 text-left\" role=\"menuitem\" tabindex=\"-1\" id=\"menu-item-1\">{{ 'Materialstärke (absteigend)' | trans }}</button>
</div>
</div>
</div>
</div>
</div>
<div class=\"grid grid-cols-1 gap-y-4 sm:grid-cols-3 sm:gap-x-6 sm:gap-y-10 lg:gap-x-8 xl:grid-cols-4\">
{% for item in results %}
{% include 'product/product_teaser.html.twig' with {'product': item} %}
{% else %}
<div class=\"p-4 my-4 text-sm text-brand-600 rounded-lg bg-brand-50 col-span-4\" role=\"alert\">
{{ 'Leider wurden keine Ergebnisse gefunden' }}
</div>
{% endfor %}
</div>
<div class=\"mt-10\">
{% include '_partials/pagination.html.twig' %}
</div>
</section>
</div>
</form>
</main>
</div>
{% endblock %}
{% block PAGE_JS %}
{% endblock %}", "product/index.html.twig", "/var/www/html/templates/product/index.html.twig");
}
public function checkSecurity()
{
static $tags = array("if" => 42, "for" => 43, "set" => 79, "include" => 215);
static $filters = array("length" => 42, "escape" => 47, "replace" => 47, "trans" => 54, "lower" => 54, "raw" => 80);
static $functions = array();
try {
$this->sandbox->checkSecurity(
['if', 'for', 'set', 'include'],
['length', 'escape', 'replace', 'trans', 'lower', 'raw'],
[]
);
} catch (SecurityError $e) {
$e->setSourceContext($this->source);
if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) {
$e->setTemplateLine($tags[$e->getTagName()]);
} elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) {
$e->setTemplateLine($filters[$e->getFilterName()]);
} elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) {
$e->setTemplateLine($functions[$e->getFunctionName()]);
}
throw $e;
}
}
}