var/cache/dev/twig/dc/dc223b5b1ffb66ad1ec2f2bc94dbc977.php line 422

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\CoreExtension;
  6. use Twig\Extension\SandboxExtension;
  7. use Twig\Markup;
  8. use Twig\Sandbox\SecurityError;
  9. use Twig\Sandbox\SecurityNotAllowedTagError;
  10. use Twig\Sandbox\SecurityNotAllowedFilterError;
  11. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  12. use Twig\Source;
  13. use Twig\Template;
  14. /* front/catalog/product/view.html.twig */
  15. class __TwigTemplate_b5e706c0ec1bc01cb35635b777847c09 extends Template
  16. {
  17. private $source;
  18. private $macros = [];
  19. public function __construct(Environment $env)
  20. {
  21. parent::__construct($env);
  22. $this->source = $this->getSourceContext();
  23. $this->blocks = [
  24. 'bodyClass' => [$this, 'block_bodyClass'],
  25. 'metas' => [$this, 'block_metas'],
  26. 'structuredData' => [$this, 'block_structuredData'],
  27. 'featured' => [$this, 'block_featured'],
  28. 'breadcrumbs' => [$this, 'block_breadcrumbs'],
  29. 'content' => [$this, 'block_content'],
  30. 'javascripts' => [$this, 'block_javascripts'],
  31. ];
  32. }
  33. protected function doGetParent(array $context)
  34. {
  35. // line 1
  36. return "front/front.html.twig";
  37. }
  38. protected function doDisplay(array $context, array $blocks = [])
  39. {
  40. $macros = $this->macros;
  41. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  42. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "front/catalog/product/view.html.twig"));
  43. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  44. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "front/catalog/product/view.html.twig"));
  45. $this->parent = $this->loadTemplate("front/front.html.twig", "front/catalog/product/view.html.twig", 1);
  46. yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
  47. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  48. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  49. }
  50. // line 3
  51. public function block_bodyClass($context, array $blocks = [])
  52. {
  53. $macros = $this->macros;
  54. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  55. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "bodyClass"));
  56. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  57. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "bodyClass"));
  58. yield "product";
  59. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  60. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  61. return; yield '';
  62. }
  63. // line 5
  64. public function block_metas($context, array $blocks = [])
  65. {
  66. $macros = $this->macros;
  67. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  68. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "metas"));
  69. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  70. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "metas"));
  71. // line 6
  72. yield " <title>";
  73. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 6, $this->source); })()), "headTitleTag", [], "any", false, false, false, 6)) ? (CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 6, $this->source); })()), "headTitleTag", [], "any", false, false, false, 6)) : (CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 6, $this->source); })()), "name", [], "any", false, false, false, 6))), "html", null, true);
  74. yield "</title>
  75. <meta name=\"description\" content=\"";
  76. // line 7
  77. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 7, $this->source); })()), "headDescTag", [], "any", false, false, false, 7)) ? (CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 7, $this->source); })()), "headDescTag", [], "any", false, false, false, 7)) : ($this->extensions['App\Twig\TextExtension']->metaDescriptionFilter(CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 7, $this->source); })()), "description", [], "any", false, false, false, 7)))), "html", null, true);
  78. yield "\">
  79. <link rel=\"canonical\" href=\"";
  80. // line 8
  81. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product", ["id" => 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.', 8, $this->source); })()), "id", [], "any", false, false, false, 8), "url" => CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 8, $this->source); })()), "url", [], "any", false, false, false, 8)]), "html", null, true);
  82. yield "\" />
  83. ";
  84. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  85. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  86. return; yield '';
  87. }
  88. // line 11
  89. public function block_structuredData($context, array $blocks = [])
  90. {
  91. $macros = $this->macros;
  92. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  93. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "structuredData"));
  94. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  95. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "structuredData"));
  96. // line 12
  97. yield " ";
  98. $context["cpt"] = 1;
  99. // line 13
  100. yield " <script type=\"application/ld+json\">
  101. {
  102. \"@context\": \"https://schema.org\",
  103. \"@type\": \"BreadcrumbList\",
  104. \"itemListElement\":
  105. [
  106. {
  107. \"@type\": \"ListItem\",
  108. \"position\": ";
  109. // line 21
  110. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["cpt"]) || array_key_exists("cpt", $context) ? $context["cpt"] : (function () { throw new RuntimeError('Variable "cpt" does not exist.', 21, $this->source); })()), "html", null, true);
  111. yield ",
  112. \"item\":
  113. {
  114. \"@id\": \"";
  115. // line 24
  116. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("index");
  117. yield "\",
  118. \"name\": \"";
  119. // line 25
  120. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Vivog | Matériel pour les toiletteurs et éleveurs", [], "messages");
  121. yield "\"
  122. }
  123. },
  124. ";
  125. // line 28
  126. $context['_parent'] = $context;
  127. $context['_seq'] = CoreExtension::ensureTraversable((isset($context["path"]) || array_key_exists("path", $context) ? $context["path"] : (function () { throw new RuntimeError('Variable "path" does not exist.', 28, $this->source); })()));
  128. $context['loop'] = [
  129. 'parent' => $context['_parent'],
  130. 'index0' => 0,
  131. 'index' => 1,
  132. 'first' => true,
  133. ];
  134. if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  135. $length = count($context['_seq']);
  136. $context['loop']['revindex0'] = $length - 1;
  137. $context['loop']['revindex'] = $length;
  138. $context['loop']['length'] = $length;
  139. $context['loop']['last'] = 1 === $length;
  140. }
  141. foreach ($context['_seq'] as $context["_key"] => $context["p"]) {
  142. // line 29
  143. yield " ";
  144. $context["cpt"] = ((isset($context["cpt"]) || array_key_exists("cpt", $context) ? $context["cpt"] : (function () { throw new RuntimeError('Variable "cpt" does not exist.', 29, $this->source); })()) + 1);
  145. // line 30
  146. yield " {
  147. \"@type\": \"ListItem\",
  148. \"position\": ";
  149. // line 32
  150. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["cpt"]) || array_key_exists("cpt", $context) ? $context["cpt"] : (function () { throw new RuntimeError('Variable "cpt" does not exist.', 32, $this->source); })()), "html", null, true);
  151. yield ",
  152. \"item\":
  153. {
  154. ";
  155. // line 35
  156. if ((CoreExtension::getAttribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 35) == 1)) {
  157. // line 36
  158. yield " \"@id\": \"";
  159. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("universe", ["url" => CoreExtension::getAttribute($this->env, $this->source, $context["p"], "url", [], "any", false, false, false, 36), "id" => CoreExtension::getAttribute($this->env, $this->source, $context["p"], "id", [], "any", false, false, false, 36)]), "html", null, true);
  160. yield "\",
  161. ";
  162. } else {
  163. // line 38
  164. yield " \"@id\": \"";
  165. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("category", ["url" => CoreExtension::getAttribute($this->env, $this->source, $context["p"], "url", [], "any", false, false, false, 38), "id" => CoreExtension::getAttribute($this->env, $this->source, $context["p"], "id", [], "any", false, false, false, 38)]), "html", null, true);
  166. yield "\",
  167. ";
  168. }
  169. // line 40
  170. yield " \"name\": \"";
  171. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["p"], "name", [], "any", false, false, false, 40), "html", null, true);
  172. yield "\"
  173. }
  174. },
  175. ";
  176. ++$context['loop']['index0'];
  177. ++$context['loop']['index'];
  178. $context['loop']['first'] = false;
  179. if (isset($context['loop']['length'])) {
  180. --$context['loop']['revindex0'];
  181. --$context['loop']['revindex'];
  182. $context['loop']['last'] = 0 === $context['loop']['revindex0'];
  183. }
  184. }
  185. $_parent = $context['_parent'];
  186. unset($context['_seq'], $context['_iterated'], $context['_key'], $context['p'], $context['_parent'], $context['loop']);
  187. $context = array_intersect_key($context, $_parent) + $_parent;
  188. // line 44
  189. yield " ";
  190. $context["cpt"] = ((isset($context["cpt"]) || array_key_exists("cpt", $context) ? $context["cpt"] : (function () { throw new RuntimeError('Variable "cpt" does not exist.', 44, $this->source); })()) + 1);
  191. // line 45
  192. yield " {
  193. \"@type\": \"ListItem\",
  194. \"position\": ";
  195. // line 47
  196. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["cpt"]) || array_key_exists("cpt", $context) ? $context["cpt"] : (function () { throw new RuntimeError('Variable "cpt" does not exist.', 47, $this->source); })()), "html", null, true);
  197. yield ",
  198. \"item\":
  199. {
  200. \"@id\": \"";
  201. // line 50
  202. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product", ["url" => 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.', 50, $this->source); })()), "url", [], "any", false, false, false, 50), "id" => 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.', 50, $this->source); })()), "id", [], "any", false, false, false, 50)]), "html", null, true);
  203. yield "\",
  204. \"name\": \"";
  205. // line 51
  206. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(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.', 51, $this->source); })()), "name", [], "any", false, false, false, 51), "html", null, true);
  207. yield "\"
  208. }
  209. }
  210. ]
  211. }
  212. </script>
  213. ";
  214. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  215. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  216. return; yield '';
  217. }
  218. // line 59
  219. public function block_featured($context, array $blocks = [])
  220. {
  221. $macros = $this->macros;
  222. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  223. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "featured"));
  224. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  225. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "featured"));
  226. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  227. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  228. return; yield '';
  229. }
  230. // line 61
  231. public function block_breadcrumbs($context, array $blocks = [])
  232. {
  233. $macros = $this->macros;
  234. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  235. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "breadcrumbs"));
  236. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  237. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "breadcrumbs"));
  238. // line 62
  239. yield " ";
  240. yield from $this->loadTemplate("front/layout/breadcrumbs.html.twig", "front/catalog/product/view.html.twig", 62)->unwrap()->yield(CoreExtension::merge($context, ["product" => (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 62, $this->source); })())]));
  241. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  242. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  243. return; yield '';
  244. }
  245. // line 65
  246. public function block_content($context, array $blocks = [])
  247. {
  248. $macros = $this->macros;
  249. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  250. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
  251. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  252. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
  253. // line 66
  254. yield "
  255. ";
  256. // line 67
  257. yield from $this->loadTemplate("front/layout/messages.html.twig", "front/catalog/product/view.html.twig", 67)->unwrap()->yield($context);
  258. // line 68
  259. yield "
  260. <div class=\"product-view\">
  261. <div class=\"ctn\">
  262. ";
  263. // line 71
  264. yield from $this->loadTemplate("front/catalog/product/view/infos.html.twig", "front/catalog/product/view.html.twig", 71)->unwrap()->yield(CoreExtension::merge($context, ["discounts" => (isset($context["discountsList"]) || array_key_exists("discountsList", $context) ? $context["discountsList"] : (function () { throw new RuntimeError('Variable "discountsList" does not exist.', 71, $this->source); })())]));
  265. // line 72
  266. yield " </div>
  267. <div class=\"ctn\">
  268. ";
  269. // line 74
  270. if (CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 74, $this->source); })()), "description", [], "any", false, false, false, 74)) {
  271. // line 75
  272. yield " <div class=\"tab-content rte section\" id=\"description\">
  273. <div class=\"title-ctn\">
  274. <div class=\"title\">";
  275. // line 77
  276. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Description détaillée", [], "messages");
  277. yield "</div>
  278. </div>
  279. ";
  280. // line 79
  281. yield CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 79, $this->source); })()), "description", [], "any", false, false, false, 79);
  282. yield "
  283. </div>
  284. ";
  285. }
  286. // line 82
  287. yield " ";
  288. if (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.', 82, $this->source); })()), "notice", [], "any", false, false, false, 82)) {
  289. // line 83
  290. yield " <div class=\"tab-content rte section\" id=\"notice\">
  291. <div class=\"title-ctn\">
  292. <div class=\"title\">";
  293. // line 85
  294. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Notice", [], "messages");
  295. yield "</div>
  296. </div>
  297. <p class=\"notice\"><a href=\"";
  298. // line 87
  299. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(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.', 87, $this->source); })()), "noticeUrl", [], "any", false, false, false, 87), "html", null, true);
  300. yield "\" target=\"_blank\">";
  301. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Télécharger la notice d'utilisation", [], "messages");
  302. yield "</a></p>
  303. </div>
  304. ";
  305. }
  306. // line 90
  307. yield " ";
  308. if (CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 90, $this->source); })()), "conseil1", [], "any", false, false, false, 90)) {
  309. // line 91
  310. yield " <div class=\"section rte advices\">
  311. <div class=\"title-ctn\">
  312. <div class=\"title\">";
  313. // line 93
  314. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Conseils et astuces", [], "messages");
  315. yield "</div>
  316. </div>
  317. ";
  318. // line 95
  319. yield CoreExtension::getAttribute($this->env, $this->source, (isset($context["productDescription"]) || array_key_exists("productDescription", $context) ? $context["productDescription"] : (function () { throw new RuntimeError('Variable "productDescription" does not exist.', 95, $this->source); })()), "conseil1", [], "any", false, false, false, 95);
  320. yield "
  321. </div>
  322. ";
  323. }
  324. // line 98
  325. yield " ";
  326. if (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.', 98, $this->source); })()), "video", [], "any", false, false, false, 98)) {
  327. // line 99
  328. yield " <div class=\"tab-content rte section\" id=\"video\">
  329. <div class=\"title-ctn\">
  330. <div class=\"title\">";
  331. // line 101
  332. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Vid&Eacute;o", [], "messages");
  333. yield "</div>
  334. <hr>
  335. </div>
  336. <div class=\"video-ctn\">
  337. ";
  338. // line 105
  339. yield 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.', 105, $this->source); })()), "video", [], "any", false, false, false, 105);
  340. yield "
  341. </div>
  342. </div>
  343. ";
  344. }
  345. // line 109
  346. yield " </div>
  347. ";
  348. // line 110
  349. if ((isset($context["associates"]) || array_key_exists("associates", $context) ? $context["associates"] : (function () { throw new RuntimeError('Variable "associates" does not exist.', 110, $this->source); })())) {
  350. // line 111
  351. yield " ";
  352. yield from $this->loadTemplate("front/catalog/product/carousel.html.twig", "front/catalog/product/view.html.twig", 111)->unwrap()->yield(CoreExtension::merge($context, ["products" => (isset($context["associates"]) || array_key_exists("associates", $context) ? $context["associates"] : (function () { throw new RuntimeError('Variable "associates" does not exist.', 111, $this->source); })()), "title" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Produits associés"), "withWrapper" => true]));
  353. // line 112
  354. yield " ";
  355. }
  356. // line 113
  357. yield " <div class=\"ctn\" style=\"padding: 30px 0;\">
  358. ";
  359. // line 114
  360. if ((isset($context["inCategory"]) || array_key_exists("inCategory", $context) ? $context["inCategory"] : (function () { throw new RuntimeError('Variable "inCategory" does not exist.', 114, $this->source); })())) {
  361. // line 115
  362. yield " ";
  363. yield from $this->loadTemplate("front/catalog/product/carousel.html.twig", "front/catalog/product/view.html.twig", 115)->unwrap()->yield(CoreExtension::merge($context, ["products" => (isset($context["inCategory"]) || array_key_exists("inCategory", $context) ? $context["inCategory"] : (function () { throw new RuntimeError('Variable "inCategory" does not exist.', 115, $this->source); })()), "title" => $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Dans la même catégorie"), "withWrapper" => false]));
  364. // line 116
  365. yield " ";
  366. }
  367. // line 117
  368. yield " </div>
  369. ";
  370. // line 118
  371. yield $this->env->getRuntime('Symfony\Bridge\Twig\Extension\HttpKernelRuntime')->renderFragment(Symfony\Bridge\Twig\Extension\HttpKernelExtension::controller("App\\Controller\\Front\\Modules\\SeenProductsController::block", ["request" => CoreExtension::getAttribute($this->env, $this->source, // line 120
  372. (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 120, $this->source); })()), "request", [], "any", false, false, false, 120)]));
  373. // line 121
  374. yield "
  375. <div class=\"ctn\">
  376. ";
  377. // line 123
  378. if ((isset($context["pathTags"]) || array_key_exists("pathTags", $context) ? $context["pathTags"] : (function () { throw new RuntimeError('Variable "pathTags" does not exist.', 123, $this->source); })())) {
  379. // line 124
  380. yield " <div class=\"section rte tags\">
  381. <div class=\"title-ctn\">
  382. <div class=\"title\">";
  383. // line 126
  384. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Craquez aussi pour...", [], "messages");
  385. yield "</div>
  386. </div>
  387. ";
  388. // line 128
  389. yield (isset($context["pathTags"]) || array_key_exists("pathTags", $context) ? $context["pathTags"] : (function () { throw new RuntimeError('Variable "pathTags" does not exist.', 128, $this->source); })());
  390. yield "
  391. </div>
  392. ";
  393. }
  394. // line 131
  395. yield " </div>
  396. ";
  397. // line 142
  398. yield " </div>
  399. ";
  400. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  401. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  402. return; yield '';
  403. }
  404. // line 145
  405. public function block_javascripts($context, array $blocks = [])
  406. {
  407. $macros = $this->macros;
  408. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  409. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
  410. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  411. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
  412. // line 146
  413. yield " <script src=\"";
  414. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("js/product.js"), "html", null, true);
  415. yield "\"></script>
  416. <script>
  417. \$(document).ready(function(){
  418. ";
  419. // line 150
  420. yield " product.init();
  421. });
  422. </script>
  423. ";
  424. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  425. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  426. return; yield '';
  427. }
  428. /**
  429. * @codeCoverageIgnore
  430. */
  431. public function getTemplateName()
  432. {
  433. return "front/catalog/product/view.html.twig";
  434. }
  435. /**
  436. * @codeCoverageIgnore
  437. */
  438. public function isTraitable()
  439. {
  440. return false;
  441. }
  442. /**
  443. * @codeCoverageIgnore
  444. */
  445. public function getDebugInfo()
  446. {
  447. return array ( 478 => 150, 471 => 146, 461 => 145, 449 => 142, 446 => 131, 440 => 128, 435 => 126, 431 => 124, 429 => 123, 425 => 121, 423 => 120, 422 => 118, 419 => 117, 416 => 116, 413 => 115, 411 => 114, 408 => 113, 405 => 112, 402 => 111, 400 => 110, 397 => 109, 390 => 105, 383 => 101, 379 => 99, 376 => 98, 370 => 95, 365 => 93, 361 => 91, 358 => 90, 350 => 87, 345 => 85, 341 => 83, 338 => 82, 332 => 79, 327 => 77, 323 => 75, 321 => 74, 317 => 72, 315 => 71, 310 => 68, 308 => 67, 305 => 66, 295 => 65, 283 => 62, 273 => 61, 254 => 59, 236 => 51, 232 => 50, 226 => 47, 222 => 45, 219 => 44, 200 => 40, 194 => 38, 188 => 36, 186 => 35, 180 => 32, 176 => 30, 173 => 29, 156 => 28, 150 => 25, 146 => 24, 140 => 21, 130 => 13, 127 => 12, 117 => 11, 104 => 8, 100 => 7, 95 => 6, 85 => 5, 65 => 3, 42 => 1,);
  448. }
  449. public function getSourceContext()
  450. {
  451. return new Source("{% extends 'front/front.html.twig' %}
  452. {% block bodyClass %}product{% endblock %}
  453. {% block metas %}
  454. <title>{{ productDescription.headTitleTag ? productDescription.headTitleTag : productDescription.name }}</title>
  455. <meta name=\"description\" content=\"{{ productDescription.headDescTag ? productDescription.headDescTag : productDescription.description|metadescription }}\">
  456. <link rel=\"canonical\" href=\"{{ url('product',{id:product.id, url:productDescription.url}) }}\" />
  457. {% endblock %}
  458. {% block structuredData %}
  459. {% set cpt = 1 %}
  460. <script type=\"application/ld+json\">
  461. {
  462. \"@context\": \"https://schema.org\",
  463. \"@type\": \"BreadcrumbList\",
  464. \"itemListElement\":
  465. [
  466. {
  467. \"@type\": \"ListItem\",
  468. \"position\": {{ cpt }},
  469. \"item\":
  470. {
  471. \"@id\": \"{{ url('index') }}\",
  472. \"name\": \"{% trans %}Vivog | Matériel pour les toiletteurs et éleveurs{% endtrans %}\"
  473. }
  474. },
  475. {% for p in path %}
  476. {% set cpt = cpt + 1 %}
  477. {
  478. \"@type\": \"ListItem\",
  479. \"position\": {{ cpt }},
  480. \"item\":
  481. {
  482. {% if loop.index == 1 %}
  483. \"@id\": \"{{ url('universe',{url:p.url,id:p.id}) }}\",
  484. {% else %}
  485. \"@id\": \"{{ url('category',{url:p.url,id:p.id}) }}\",
  486. {% endif %}
  487. \"name\": \"{{ p.name }}\"
  488. }
  489. },
  490. {% endfor %}
  491. {% set cpt = cpt + 1 %}
  492. {
  493. \"@type\": \"ListItem\",
  494. \"position\": {{ cpt }},
  495. \"item\":
  496. {
  497. \"@id\": \"{{ url('product',{url:product.url,id:product.id}) }}\",
  498. \"name\": \"{{ product.name }}\"
  499. }
  500. }
  501. ]
  502. }
  503. </script>
  504. {% endblock %}
  505. {% block featured %}{% endblock %}
  506. {% block breadcrumbs %}
  507. {% include 'front/layout/breadcrumbs.html.twig' with {product:product} %}
  508. {% endblock %}
  509. {% block content %}
  510. {% include 'front/layout/messages.html.twig' %}
  511. <div class=\"product-view\">
  512. <div class=\"ctn\">
  513. {% include 'front/catalog/product/view/infos.html.twig' with {discounts:discountsList} %}
  514. </div>
  515. <div class=\"ctn\">
  516. {% if productDescription.description %}
  517. <div class=\"tab-content rte section\" id=\"description\">
  518. <div class=\"title-ctn\">
  519. <div class=\"title\">{% trans %}Description détaillée{% endtrans %}</div>
  520. </div>
  521. {{ productDescription.description|raw }}
  522. </div>
  523. {% endif %}
  524. {% if product.notice %}
  525. <div class=\"tab-content rte section\" id=\"notice\">
  526. <div class=\"title-ctn\">
  527. <div class=\"title\">{% trans %}Notice{% endtrans %}</div>
  528. </div>
  529. <p class=\"notice\"><a href=\"{{ product.noticeUrl }}\" target=\"_blank\">{% trans %}Télécharger la notice d'utilisation{% endtrans %}</a></p>
  530. </div>
  531. {% endif %}
  532. {% if productDescription.conseil1 %}
  533. <div class=\"section rte advices\">
  534. <div class=\"title-ctn\">
  535. <div class=\"title\">{% trans %}Conseils et astuces{% endtrans %}</div>
  536. </div>
  537. {{ productDescription.conseil1|raw }}
  538. </div>
  539. {% endif %}
  540. {% if product.video %}
  541. <div class=\"tab-content rte section\" id=\"video\">
  542. <div class=\"title-ctn\">
  543. <div class=\"title\">{% trans %}Vid&Eacute;o{% endtrans %}</div>
  544. <hr>
  545. </div>
  546. <div class=\"video-ctn\">
  547. {{ product.video|raw }}
  548. </div>
  549. </div>
  550. {% endif %}
  551. </div>
  552. {% if associates %}
  553. {% include 'front/catalog/product/carousel.html.twig' with {products:associates, title:'Produits associés'|trans, withWrapper:true} %}
  554. {% endif %}
  555. <div class=\"ctn\" style=\"padding: 30px 0;\">
  556. {% if inCategory %}
  557. {% include 'front/catalog/product/carousel.html.twig' with {products:inCategory, title:'Dans la même catégorie'|trans, withWrapper:false} %}
  558. {% endif %}
  559. </div>
  560. {{ render(controller(
  561. 'App\\\\Controller\\\\Front\\\\Modules\\\\SeenProductsController::block',
  562. { 'request': app.request }
  563. )) }}
  564. <div class=\"ctn\">
  565. {% if pathTags %}
  566. <div class=\"section rte tags\">
  567. <div class=\"title-ctn\">
  568. <div class=\"title\">{% trans %}Craquez aussi pour...{% endtrans %}</div>
  569. </div>
  570. {{ pathTags|raw }}
  571. </div>
  572. {% endif %}
  573. </div>
  574. {# <div class=\"ctn\">
  575. <div class=\"section tags module-categories\">
  576. <div class=\"title-ctn\">
  577. <div class=\"title\">{% trans %}No catégories{% endtrans %}</div>
  578. </div>
  579. <div class=\"content\">
  580. {{ pathTags|raw }}
  581. </div>
  582. </div>
  583. </div>#}
  584. </div>
  585. {% endblock %}
  586. {% block javascripts %}
  587. <script src=\"{{ asset('js/product.js') }}\"></script>
  588. <script>
  589. \$(document).ready(function(){
  590. {# tabs.init();#}
  591. product.init();
  592. });
  593. </script>
  594. {% endblock %}", "front/catalog/product/view.html.twig", "/var/www/dogcat.com/v2-test/templates/front/catalog/product/view.html.twig");
  595. }
  596. }