var/cache/dev/twig/fd/fd402a7ee99b181b601f2e40f304d4bc.php line 52

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\SandboxExtension;
  6. use Twig\Markup;
  7. use Twig\Sandbox\SecurityError;
  8. use Twig\Sandbox\SecurityNotAllowedTagError;
  9. use Twig\Sandbox\SecurityNotAllowedFilterError;
  10. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  11. use Twig\Source;
  12. use Twig\Template;
  13. /* Product/list.twig */
  14. class __TwigTemplate_da690b6746d627fa2d3ea9a4e8bfedea extends \Eccube\Twig\Template
  15. {
  16.     private $source;
  17.     private $macros = [];
  18.     public function __construct(Environment $env)
  19.     {
  20.         parent::__construct($env);
  21.         $this->source $this->getSourceContext();
  22.         $this->blocks = [
  23.             'javascript' => [$this'block_javascript'],
  24.             'main' => [$this'block_main'],
  25.         ];
  26.     }
  27.     protected function doGetParent(array $context)
  28.     {
  29.         // line 11
  30.         return "default_frame.twig";
  31.     }
  32.     protected function doDisplay(array $context, array $blocks = [])
  33.     {
  34.         $macros $this->macros;
  35.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  36.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Product/list.twig"));
  37.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  38.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Product/list.twig"));
  39.         // line 13
  40.         $context["body_class"] = "product_page";
  41.         // line 11
  42.         $this->parent $this->loadTemplate("default_frame.twig""Product/list.twig"11);
  43.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  44.         
  45.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  46.         
  47.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  48.     }
  49.     // line 15
  50.     public function block_javascript($context, array $blocks = [])
  51.     {
  52.         $macros $this->macros;
  53.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  54.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  55.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  56.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  57.         // line 16
  58.         echo "    <script>
  59.         eccube.productsClassCategories = {
  60.             ";
  61.         // line 18
  62.         $context['_parent'] = $context;
  63.         $context['_seq'] = twig_ensure_traversable((isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'18$this->source); })()));
  64.         $context['loop'] = [
  65.           'parent' => $context['_parent'],
  66.           'index0' => 0,
  67.           'index'  => 1,
  68.           'first'  => true,
  69.         ];
  70.         if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  71.             $length count($context['_seq']);
  72.             $context['loop']['revindex0'] = $length 1;
  73.             $context['loop']['revindex'] = $length;
  74.             $context['loop']['length'] = $length;
  75.             $context['loop']['last'] = === $length;
  76.         }
  77.         foreach ($context['_seq'] as $context["_key"] => $context["Product"]) {
  78.             // line 19
  79.             echo "            \"";
  80.             echo twig_escape_filter($this->envtwig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse19), "js"), "html"nulltrue);
  81.             echo "\": ";
  82.             echo $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getClassCategoriesAsJson($context["Product"]);
  83.             if ((twig_get_attribute($this->env$this->source$context["loop"], "last", [], "any"falsefalsefalse19) == false)) {
  84.                 echo ", ";
  85.             }
  86.             // line 20
  87.             echo "            ";
  88.             ++$context['loop']['index0'];
  89.             ++$context['loop']['index'];
  90.             $context['loop']['first'] = false;
  91.             if (isset($context['loop']['length'])) {
  92.                 --$context['loop']['revindex0'];
  93.                 --$context['loop']['revindex'];
  94.                 $context['loop']['last'] = === $context['loop']['revindex0'];
  95.             }
  96.         }
  97.         $_parent $context['_parent'];
  98.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Product'], $context['_parent'], $context['loop']);
  99.         $context array_intersect_key($context$_parent) + $_parent;
  100.         // line 21
  101.         echo "        };
  102.         \$(function() {
  103.             // 表示件数を変更
  104.             \$('.disp-number').change(function() {
  105.                 var dispNumber = \$(this).val();
  106.                 \$('#disp_number').val(dispNumber);
  107.                 \$('#pageno').val(1);
  108.                 \$(\"#form1\").submit();
  109.             });
  110.             // 並び順を変更
  111.             \$('.order-by').change(function() {
  112.                 var orderBy = \$(this).val();
  113.                 \$('#orderby').val(orderBy);
  114.                 \$('#pageno').val(1);
  115.                 \$(\"#form1\").submit();
  116.             });
  117.             \$('.add-cart').on('click', function(e) {
  118.                 var \$form = \$(this).parents('li').find('form');
  119.                 // 個数フォームのチェック
  120.                 var \$quantity = \$form.parent().find('.quantity');
  121.                 if (\$quantity.val() < 1) {
  122.                     \$quantity[0].setCustomValidity('";
  123.         // line 47
  124.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("1以上で入力してください。"), "html"nulltrue);
  125.         echo "');
  126.                     setTimeout(function() {
  127.                         loadingOverlay('hide');
  128.                     }, 100);
  129.                     return true;
  130.                 } else {
  131.                     \$quantity[0].setCustomValidity('');
  132.                 }
  133.                 e.preventDefault();
  134.                 \$.ajax({
  135.                     url: \$form.attr('action'),
  136.                     type: \$form.attr('method'),
  137.                     data: \$form.serialize(),
  138.                     dataType: 'json',
  139.                     beforeSend: function(xhr, settings) {
  140.                         // Buttonを無効にする
  141.                         \$('.add-cart').prop('disabled', true);
  142.                     }
  143.                 }).done(function(data) {
  144.                     // レスポンス内のメッセージをalertで表示
  145.                     \$.each(data.messages, function() {
  146.                         \$('#ec-modal-header').html(this);
  147.                     });
  148.                     \$('.ec-modal').show()
  149.                     // カートブロックを更新する
  150.                     \$.ajax({
  151.                         url: '";
  152.         // line 75
  153.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("block_cart");
  154.         echo "',
  155.                         type: 'GET',
  156.                         dataType: 'html'
  157.                     }).done(function(html) {
  158.                         \$('.ec-headerRole__cart').html(html);
  159.                     });
  160.                 }).fail(function(data) {
  161.                     alert('";
  162.         // line 82
  163.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへの追加に失敗しました。"), "html"nulltrue);
  164.         echo "');
  165.                 }).always(function(data) {
  166.                     // Buttonを有効にする
  167.                     \$('.add-cart').prop('disabled', false);
  168.                 });
  169.             });
  170.         });
  171.         \$('.ec-modal-wrap').on('click', function(e) {
  172.             // モーダル内の処理は外側にバブリングさせない
  173.             e.stopPropagation();
  174.         });
  175.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  176.             \$('.ec-modal').hide()
  177.         });
  178.     </script>
  179. ";
  180.         
  181.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  182.         
  183.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  184.     }
  185.     // line 100
  186.     public function block_main($context, array $blocks = [])
  187.     {
  188.         $macros $this->macros;
  189.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  190.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  191.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  192.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  193.         // line 101
  194.         echo "    ";
  195.         if ((twig_length_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'101$this->source); })()), "category_id", [], "any"falsefalsefalse101), "vars", [], "any"falsefalsefalse101), "errors", [], "any"falsefalsefalse101)) > 0)) {
  196.             // line 102
  197.             echo "        <div class=\"ec-searchnavRole\">
  198.             <p class=\"errormsg text-danger\">";
  199.             // line 103
  200.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ご指定のカテゴリは存在しません"), "html"nulltrue);
  201.             echo "</p>
  202.         </div>
  203.     ";
  204.         } else {
  205.             // line 106
  206.             echo "        <div class=\"ec-searchnavRole\">
  207.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  208.                 ";
  209.             // line 108
  210.             $context['_parent'] = $context;
  211.             $context['_seq'] = twig_ensure_traversable((isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'108$this->source); })()));
  212.             foreach ($context['_seq'] as $context["_key"] => $context["item"]) {
  213.                 // line 109
  214.                 echo "                    <input type=\"hidden\" id=\"";
  215.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse109), "id", [], "any"falsefalsefalse109), "html"nulltrue);
  216.                 echo "\"
  217.                            name=\"";
  218.                 // line 110
  219.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse110), "full_name", [], "any"falsefalsefalse110), "html"nulltrue);
  220.                 echo "\"
  221.                            ";
  222.                 // line 111
  223.                 if ( !twig_test_empty(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse111), "value", [], "any"falsefalsefalse111))) {
  224.                     echo "value=\"";
  225.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse111), "value", [], "any"falsefalsefalse111), "html"nulltrue);
  226.                     echo "\" ";
  227.                 }
  228.                 echo "/>
  229.                 ";
  230.             }
  231.             $_parent $context['_parent'];
  232.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['item'], $context['_parent'], $context['loop']);
  233.             $context array_intersect_key($context$_parent) + $_parent;
  234.             // line 113
  235.             echo "            </form>
  236.             <div class=\"ec-searchnavRole__topicpath\">
  237.                 <ol class=\"ec-topicpath\">
  238.                     <li class=\"ec-topicpath__item\"><a href=\"";
  239.             // line 116
  240.             echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  241.             echo "\">";
  242.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("全て"), "html"nulltrue);
  243.             echo "</a>
  244.                     </li>
  245.                     ";
  246.             // line 118
  247.             if ( !(null === (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'118$this->source); })()))) {
  248.                 // line 119
  249.                 echo "                        ";
  250.                 $context['_parent'] = $context;
  251.                 $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'119$this->source); })()), "path", [], "any"falsefalsefalse119));
  252.                 $context['loop'] = [
  253.                   'parent' => $context['_parent'],
  254.                   'index0' => 0,
  255.                   'index'  => 1,
  256.                   'first'  => true,
  257.                 ];
  258.                 if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  259.                     $length count($context['_seq']);
  260.                     $context['loop']['revindex0'] = $length 1;
  261.                     $context['loop']['revindex'] = $length;
  262.                     $context['loop']['length'] = $length;
  263.                     $context['loop']['last'] = === $length;
  264.                 }
  265.                 foreach ($context['_seq'] as $context["_key"] => $context["Path"]) {
  266.                     // line 120
  267.                     echo "                            <li class=\"ec-topicpath__divider\">|</li>
  268.                             <li class=\"ec-topicpath__item";
  269.                     // line 121
  270.                     if (twig_get_attribute($this->env$this->source$context["loop"], "last", [], "any"falsefalsefalse121)) {
  271.                         echo "--active";
  272.                     }
  273.                     echo "\"><a
  274.                                         href=\"";
  275.                     // line 122
  276.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  277.                     echo "?category_id=";
  278.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "id", [], "any"falsefalsefalse122), "html"nulltrue);
  279.                     echo "\">";
  280.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "name", [], "any"falsefalsefalse122), "html"nulltrue);
  281.                     echo "</a>
  282.                             </li>
  283.                         ";
  284.                     ++$context['loop']['index0'];
  285.                     ++$context['loop']['index'];
  286.                     $context['loop']['first'] = false;
  287.                     if (isset($context['loop']['length'])) {
  288.                         --$context['loop']['revindex0'];
  289.                         --$context['loop']['revindex'];
  290.                         $context['loop']['last'] = === $context['loop']['revindex0'];
  291.                     }
  292.                 }
  293.                 $_parent $context['_parent'];
  294.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Path'], $context['_parent'], $context['loop']);
  295.                 $context array_intersect_key($context$_parent) + $_parent;
  296.                 // line 125
  297.                 echo "                    ";
  298.             }
  299.             // line 126
  300.             echo "                    ";
  301.             if ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'126$this->source); })()), "vars", [], "any"falsefalsefalse126), "value", [], "any"falsefalsefalse126) && twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'126$this->source); })()), "vars", [], "any"falsefalsefalse126), "value", [], "any"falsefalsefalse126), "name", [], "any"falsefalsefalse126))) {
  302.                 // line 127
  303.                 echo "                        <li class=\"ec-topicpath__divider\">|</li>
  304.                         <li class=\"ec-topicpath__item\">";
  305.                 // line 128
  306.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("「%name%」の検索結果", ["%name%" => twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'128$this->source); })()), "vars", [], "any"falsefalsefalse128), "value", [], "any"falsefalsefalse128), "name", [], "any"falsefalsefalse128)]), "html"nulltrue);
  307.                 echo "</li>
  308.                     ";
  309.             }
  310.             // line 130
  311.             echo "                </ol>
  312.             </div>
  313.             <div class=\"ec-searchnavRole__infos\">
  314.                 ";
  315.             // line 134
  316.             if (((isset($context["recommend"]) || array_key_exists("recommend"$context) ? $context["recommend"] : (function () { throw new RuntimeError('Variable "recommend" does not exist.'134$this->source); })()) == 0)) {
  317.                 // line 135
  318.                 echo "                    <div class=\"ec-searchnavRole__counter\">
  319.                         ";
  320.                 // line 136
  321.                 if ((twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'136$this->source); })()), "totalItemCount", [], "any"falsefalsefalse136) > 0)) {
  322.                     // line 137
  323.                     echo "                            ";
  324.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("<span class=\"ec-font-bold\">%count%件</span><span>の商品が見つかりました</span>", ["%count%" => twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'137$this->source); })()), "totalItemCount", [], "any"falsefalsefalse137)]);
  325.                     echo "
  326.                         ";
  327.                 } else {
  328.                     // line 139
  329.                     echo "                            <span>";
  330.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お探しの商品は見つかりませんでした"), "html"nulltrue);
  331.                     echo "</span>
  332.                         ";
  333.                 }
  334.                 // line 141
  335.                 echo "                    </div>
  336.                     ";
  337.                 // line 142
  338.                 if ((twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'142$this->source); })()), "totalItemCount", [], "any"falsefalsefalse142) > 0)) {
  339.                     // line 143
  340.                     echo "                        <div class=\"ec-searchnavRole__actions\">
  341.                             <div class=\"ec-select\">
  342.                                 ";
  343.                     // line 145
  344.                     echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'145$this->source); })()), "disp_number", [], "any"falsefalsefalse145), 'widget', ["id" => """attr" => ["class" => "disp-number"]]);
  345.                     echo "
  346.                                 ";
  347.                     // line 146
  348.                     echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'146$this->source); })()), "orderby", [], "any"falsefalsefalse146), 'widget', ["id" => """attr" => ["class" => "order-by"]]);
  349.                     echo "
  350.                             </div>
  351.                         </div>
  352.                     ";
  353.                 }
  354.                 // line 150
  355.                 echo "                ";
  356.             }
  357.             // line 151
  358.             echo "            </div>
  359.         </div>
  360.         ";
  361.             // line 153
  362.             if ((twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'153$this->source); })()), "totalItemCount", [], "any"falsefalsefalse153) > 0)) {
  363.                 // line 154
  364.                 echo "            <div class=\"ec-shelfRole\">
  365.                 <ul class=\"ec-shelfGrid\">
  366.                     ";
  367.                 // line 156
  368.                 $context['_parent'] = $context;
  369.                 $context['_seq'] = twig_ensure_traversable((isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'156$this->source); })()));
  370.                 $context['loop'] = [
  371.                   'parent' => $context['_parent'],
  372.                   'index0' => 0,
  373.                   'index'  => 1,
  374.                   'first'  => true,
  375.                 ];
  376.                 if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  377.                     $length count($context['_seq']);
  378.                     $context['loop']['revindex0'] = $length 1;
  379.                     $context['loop']['revindex'] = $length;
  380.                     $context['loop']['length'] = $length;
  381.                     $context['loop']['last'] = === $length;
  382.                 }
  383.                 foreach ($context['_seq'] as $context["_key"] => $context["Product"]) {
  384.                     // line 157
  385.                     echo "                        <li class=\"ec-shelfGrid__item\">
  386.                             ";
  387.                     // line 158
  388.                     echo twig_include($this->env$context"@DesignTag42/tag_list.twig", array(), truetrue);
  389.                     echo "
  390.                             <a href=\"";
  391.                     // line 159
  392.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_detail", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse159)]), "html"nulltrue);
  393.                     echo "\">
  394.                                 <p>";
  395.                     // line 160
  396.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse160), "html"nulltrue);
  397.                     echo "</p>
  398.                                 <p class=\"ec-shelfGrid__item-image\">
  399.                                     <img src=\"";
  400.                     // line 162
  401.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(twig_get_attribute($this->env$this->source$context["Product"], "main_list_image", [], "any"falsefalsefalse162)), "save_image"), "html"nulltrue);
  402.                     echo "\" alt=\"";
  403.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse162), "html"nulltrue);
  404.                     echo "\" ";
  405.                     if ((twig_get_attribute($this->env$this->source$context["loop"], "index", [], "any"falsefalsefalse162) > 5)) {
  406.                         echo " loading=\"lazy\"";
  407.                     }
  408.                     echo ">
  409.                                 </p>
  410.                                 ";
  411.                     // line 164
  412.                     if ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'164$this->source); })()), "request", [], "any"falsefalsefalse164), "get", [=> "recommend"], "method"falsefalsefalse164) == 1)) {
  413.                         // line 165
  414.                         echo "                                    <p>";
  415.                         echo twig_nl2br(twig_get_attribute($this->env$this->source, (isset($context["dataRecommendProduct"]) || array_key_exists("dataRecommendProduct"$context) ? $context["dataRecommendProduct"] : (function () { throw new RuntimeError('Variable "dataRecommendProduct" does not exist.'165$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse165), [], "array"falsefalsefalse165));
  416.                         echo "</p>
  417.                                 ";
  418.                     }
  419.                     // line 167
  420.                     echo "                                <p class=\"price02-default\">税込単価:
  421.                                     ";
  422.                     // line 168
  423.                     if (twig_get_attribute($this->env$this->source$context["Product"], "hasProductClass", [], "any"falsefalsefalse168)) {
  424.                         // line 169
  425.                         echo "                                        ";
  426.                         if ((twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Min", [], "any"falsefalsefalse169) == twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Max", [], "any"falsefalsefalse169))) {
  427.                             // line 170
  428.                             echo "                                            ";
  429.                             echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse170)), "html"nulltrue);
  430.                             echo "
  431.                                         ";
  432.                         } else {
  433.                             // line 172
  434.                             echo "                                            ";
  435.                             echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse172)), "html"nulltrue);
  436.                             echo " ~ ";
  437.                             echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMax", [], "any"falsefalsefalse172)), "html"nulltrue);
  438.                             echo "
  439.                                         ";
  440.                         }
  441.                         // line 174
  442.                         echo "                                    ";
  443.                     } else {
  444.                         // line 175
  445.                         echo "                                        ";
  446.                         echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse175)), "html"nulltrue);
  447.                         echo "
  448.                                     ";
  449.                     }
  450.                     // line 176
  451.                     echo "円
  452.                                 </p>
  453.                                 <div class=\"ec-productRole__btn\">
  454.                                     <button type=\"button\" class=\"ec-blockBtn--action\">
  455.                                         ";
  456.                     // line 180
  457.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("商品詳細を見る"), "html"nulltrue);
  458.                     echo "
  459.                                     </button>
  460.                                 </div>
  461.                             </a>
  462.                             ";
  463.                     // line 221
  464.                     echo "                        </li>
  465.                     ";
  466.                     ++$context['loop']['index0'];
  467.                     ++$context['loop']['index'];
  468.                     $context['loop']['first'] = false;
  469.                     if (isset($context['loop']['length'])) {
  470.                         --$context['loop']['revindex0'];
  471.                         --$context['loop']['revindex'];
  472.                         $context['loop']['last'] = === $context['loop']['revindex0'];
  473.                     }
  474.                 }
  475.                 $_parent $context['_parent'];
  476.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Product'], $context['_parent'], $context['loop']);
  477.                 $context array_intersect_key($context$_parent) + $_parent;
  478.                 // line 223
  479.                 echo "                </ul>
  480.             </div>
  481.             <div class=\"ec-modal\">
  482.                 <div class=\"ec-modal-overlay\">
  483.                     <div class=\"ec-modal-wrap\">
  484.                         <span class=\"ec-modal-close\"><span class=\"ec-icon\"><img src=\"";
  485.                 // line 228
  486.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/icon/cross-dark.svg"), "html"nulltrue);
  487.                 echo "\" alt=\"\"/></span></span>
  488.                         <div id=\"ec-modal-header\" class=\"text-center\">";
  489.                 // line 229
  490.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに追加しました。"), "html"nulltrue);
  491.                 echo "</div>
  492.                         <div class=\"ec-modal-box\">
  493.                             <div class=\"ec-role\">
  494.                                 <span class=\"ec-inlineBtn--cancel\">";
  495.                 // line 232
  496.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お買い物を続ける"), "html"nulltrue);
  497.                 echo "</span>
  498.                                 <a href=\"";
  499.                 // line 233
  500.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("cart");
  501.                 echo "\" class=\"ec-inlineBtn--action\">";
  502.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへ進む"), "html"nulltrue);
  503.                 echo "</a>
  504.                             </div>
  505.                         </div>
  506.                     </div>
  507.                 </div>
  508.             </div>
  509.             <div class=\"ec-pagerRole\">
  510.                 ";
  511.                 // line 240
  512.                 $this->loadTemplate("pager.twig""Product/list.twig"240)->display(twig_array_merge($context, ["pages" => twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'240$this->source); })()), "paginationData", [], "any"falsefalsefalse240)]));
  513.                 // line 241
  514.                 echo "            </div>
  515.         ";
  516.             }
  517.             // line 243
  518.             echo "
  519.     ";
  520.         }
  521.         
  522.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  523.         
  524.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  525.     }
  526.     public function getTemplateName()
  527.     {
  528.         return "Product/list.twig";
  529.     }
  530.     public function isTraitable()
  531.     {
  532.         return false;
  533.     }
  534.     public function getDebugInfo()
  535.     {
  536.         return array (  546 => 243,  542 => 241,  540 => 240,  528 => 233,  524 => 232,  518 => 229,  514 => 228,  507 => 223,  492 => 221,  485 => 180,  479 => 176,  473 => 175,  470 => 174,  462 => 172,  456 => 170,  453 => 169,  451 => 168,  448 => 167,  442 => 165,  440 => 164,  429 => 162,  424 => 160,  420 => 159,  416 => 158,  413 => 157,  396 => 156,  392 => 154,  390 => 153,  386 => 151,  383 => 150,  376 => 146,  372 => 145,  368 => 143,  366 => 142,  363 => 141,  357 => 139,  351 => 137,  349 => 136,  346 => 135,  344 => 134,  338 => 130,  333 => 128,  330 => 127,  327 => 126,  324 => 125,  303 => 122,  297 => 121,  294 => 120,  276 => 119,  274 => 118,  267 => 116,  262 => 113,  250 => 111,  246 => 110,  241 => 109,  237 => 108,  233 => 106,  227 => 103,  224 => 102,  221 => 101,  211 => 100,  184 => 82,  174 => 75,  143 => 47,  115 => 21,  101 => 20,  93 => 19,  76 => 18,  72 => 16,  62 => 15,  51 => 11,  49 => 13,  36 => 11,);
  537.     }
  538.     public function getSourceContext()
  539.     {
  540.         return new Source("{#
  541. This file is part of EC-CUBE
  542. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  543. http://www.ec-cube.co.jp/
  544. For the full copyright and license information, please view the LICENSE
  545. file that was distributed with this source code.
  546. #}
  547. {% extends 'default_frame.twig' %}
  548. {% set body_class = 'product_page' %}
  549. {% block javascript %}
  550.     <script>
  551.         eccube.productsClassCategories = {
  552.             {% for Product in pagination %}
  553.             \"{{ Product.id|escape('js') }}\": {{ class_categories_as_json(Product)|raw }}{% if loop.last == false %}, {% endif %}
  554.             {% endfor %}
  555.         };
  556.         \$(function() {
  557.             // 表示件数を変更
  558.             \$('.disp-number').change(function() {
  559.                 var dispNumber = \$(this).val();
  560.                 \$('#disp_number').val(dispNumber);
  561.                 \$('#pageno').val(1);
  562.                 \$(\"#form1\").submit();
  563.             });
  564.             // 並び順を変更
  565.             \$('.order-by').change(function() {
  566.                 var orderBy = \$(this).val();
  567.                 \$('#orderby').val(orderBy);
  568.                 \$('#pageno').val(1);
  569.                 \$(\"#form1\").submit();
  570.             });
  571.             \$('.add-cart').on('click', function(e) {
  572.                 var \$form = \$(this).parents('li').find('form');
  573.                 // 個数フォームのチェック
  574.                 var \$quantity = \$form.parent().find('.quantity');
  575.                 if (\$quantity.val() < 1) {
  576.                     \$quantity[0].setCustomValidity('{{ '1以上で入力してください。'|trans }}');
  577.                     setTimeout(function() {
  578.                         loadingOverlay('hide');
  579.                     }, 100);
  580.                     return true;
  581.                 } else {
  582.                     \$quantity[0].setCustomValidity('');
  583.                 }
  584.                 e.preventDefault();
  585.                 \$.ajax({
  586.                     url: \$form.attr('action'),
  587.                     type: \$form.attr('method'),
  588.                     data: \$form.serialize(),
  589.                     dataType: 'json',
  590.                     beforeSend: function(xhr, settings) {
  591.                         // Buttonを無効にする
  592.                         \$('.add-cart').prop('disabled', true);
  593.                     }
  594.                 }).done(function(data) {
  595.                     // レスポンス内のメッセージをalertで表示
  596.                     \$.each(data.messages, function() {
  597.                         \$('#ec-modal-header').html(this);
  598.                     });
  599.                     \$('.ec-modal').show()
  600.                     // カートブロックを更新する
  601.                     \$.ajax({
  602.                         url: '{{ url('block_cart') }}',
  603.                         type: 'GET',
  604.                         dataType: 'html'
  605.                     }).done(function(html) {
  606.                         \$('.ec-headerRole__cart').html(html);
  607.                     });
  608.                 }).fail(function(data) {
  609.                     alert('{{ 'カートへの追加に失敗しました。'|trans }}');
  610.                 }).always(function(data) {
  611.                     // Buttonを有効にする
  612.                     \$('.add-cart').prop('disabled', false);
  613.                 });
  614.             });
  615.         });
  616.         \$('.ec-modal-wrap').on('click', function(e) {
  617.             // モーダル内の処理は外側にバブリングさせない
  618.             e.stopPropagation();
  619.         });
  620.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  621.             \$('.ec-modal').hide()
  622.         });
  623.     </script>
  624. {% endblock %}
  625. {% block main %}
  626.     {% if search_form.category_id.vars.errors|length > 0 %}
  627.         <div class=\"ec-searchnavRole\">
  628.             <p class=\"errormsg text-danger\">{{ 'ご指定のカテゴリは存在しません'|trans }}</p>
  629.         </div>
  630.     {% else %}
  631.         <div class=\"ec-searchnavRole\">
  632.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  633.                 {% for item in search_form %}
  634.                     <input type=\"hidden\" id=\"{{ item.vars.id }}\"
  635.                            name=\"{{ item.vars.full_name }}\"
  636.                            {% if item.vars.value is not empty %}value=\"{{ item.vars.value }}\" {% endif %}/>
  637.                 {% endfor %}
  638.             </form>
  639.             <div class=\"ec-searchnavRole__topicpath\">
  640.                 <ol class=\"ec-topicpath\">
  641.                     <li class=\"ec-topicpath__item\"><a href=\"{{ url('product_list') }}\">{{ '全て'|trans }}</a>
  642.                     </li>
  643.                     {% if Category is not null %}
  644.                         {% for Path in Category.path %}
  645.                             <li class=\"ec-topicpath__divider\">|</li>
  646.                             <li class=\"ec-topicpath__item{% if loop.last %}--active{% endif %}\"><a
  647.                                         href=\"{{ url('product_list') }}?category_id={{ Path.id }}\">{{ Path.name }}</a>
  648.                             </li>
  649.                         {% endfor %}
  650.                     {% endif %}
  651.                     {% if search_form.vars.value and search_form.vars.value.name %}
  652.                         <li class=\"ec-topicpath__divider\">|</li>
  653.                         <li class=\"ec-topicpath__item\">{{ '「%name%」の検索結果'|trans({ '%name%': search_form.vars.value.name }) }}</li>
  654.                     {% endif %}
  655.                 </ol>
  656.             </div>
  657.             <div class=\"ec-searchnavRole__infos\">
  658.                 {% if recommend == 0 %}
  659.                     <div class=\"ec-searchnavRole__counter\">
  660.                         {% if pagination.totalItemCount > 0 %}
  661.                             {{ '<span class=\"ec-font-bold\">%count%件</span><span>の商品が見つかりました</span>'|trans({ '%count%': pagination.totalItemCount })|raw }}
  662.                         {% else %}
  663.                             <span>{{ 'お探しの商品は見つかりませんでした'|trans }}</span>
  664.                         {% endif %}
  665.                     </div>
  666.                     {% if pagination.totalItemCount > 0 %}
  667.                         <div class=\"ec-searchnavRole__actions\">
  668.                             <div class=\"ec-select\">
  669.                                 {{ form_widget(search_form.disp_number, {'id': '', 'attr': {'class': 'disp-number'}}) }}
  670.                                 {{ form_widget(search_form.orderby, {'id': '', 'attr': {'class': 'order-by'}}) }}
  671.                             </div>
  672.                         </div>
  673.                     {% endif %}
  674.                 {% endif %}
  675.             </div>
  676.         </div>
  677.         {% if pagination.totalItemCount > 0 %}
  678.             <div class=\"ec-shelfRole\">
  679.                 <ul class=\"ec-shelfGrid\">
  680.                     {% for Product in pagination %}
  681.                         <li class=\"ec-shelfGrid__item\">
  682.                             {{ include('@DesignTag42/tag_list.twig', ignore_missing = true) }}
  683.                             <a href=\"{{ url('product_detail', {'id': Product.id}) }}\">
  684.                                 <p>{{ Product.name }}</p>
  685.                                 <p class=\"ec-shelfGrid__item-image\">
  686.                                     <img src=\"{{ asset(Product.main_list_image|no_image_product, 'save_image') }}\" alt=\"{{ Product.name }}\" {% if loop.index > 5 %} loading=\"lazy\"{% endif %}>
  687.                                 </p>
  688.                                 {% if app.request.get('recommend') == 1 %}
  689.                                     <p>{{ dataRecommendProduct[Product.id]|raw|nl2br }}</p>
  690.                                 {% endif %}
  691.                                 <p class=\"price02-default\">税込単価:
  692.                                     {% if Product.hasProductClass %}
  693.                                         {% if Product.getPrice02Min == Product.getPrice02Max %}
  694.                                             {{ Product.getPrice02IncTaxMin|price }}
  695.                                         {% else %}
  696.                                             {{ Product.getPrice02IncTaxMin|price }} ~ {{ Product.getPrice02IncTaxMax|price }}
  697.                                         {% endif %}
  698.                                     {% else %}
  699.                                         {{ Product.getPrice02IncTaxMin|price }}
  700.                                     {% endif %}円
  701.                                 </p>
  702.                                 <div class=\"ec-productRole__btn\">
  703.                                     <button type=\"button\" class=\"ec-blockBtn--action\">
  704.                                         {{ '商品詳細を見る'|trans }}
  705.                                     </button>
  706.                                 </div>
  707.                             </a>
  708.                             {#{% if recommend == 0 %}
  709.                                 {% if Product.stock_find %}
  710.                                     {% set form = forms[Product.id] %}
  711.                                     <form name=\"form{{ Product.id }}\" id=\"productForm{{ Product.id }}\" action=\"{{ url('product_add_cart', {id:Product.id}) }}\" method=\"post\">
  712.                                         <div class=\"ec-productRole__actions\">
  713.                                             {% if form.classcategory_id1 is defined %}
  714.                                                 <div class=\"ec-select\">
  715.                                                     {{ form_widget(form.classcategory_id1) }}
  716.                                                     {{ form_errors(form.classcategory_id1) }}
  717.                                                 </div>
  718.                                                 {% if form.classcategory_id2 is defined %}
  719.                                                     <div class=\"ec-select\">
  720.                                                         {{ form_widget(form.classcategory_id2) }}
  721.                                                         {{ form_errors(form.classcategory_id2) }}
  722.                                                     </div>
  723.                                                 {% endif %}
  724.                                             {% endif %}
  725.                                             <div class=\"ec-numberInput\"><span>{{ '数量'|trans }}</span>
  726.                                                 {{ form_widget(form.quantity, {'attr': {'class': 'quantity'}}) }}
  727.                                                 {{ form_errors(form.quantity) }}
  728.                                             </div>
  729.                                         </div>
  730.                                         {{ form_rest(form) }}
  731.                                     </form>
  732.                                     <div class=\"ec-productRole__btn\">
  733.                                         <button type=\"submit\" class=\"ec-blockBtn--action add-cart\" data-cartid=\"{{ Product.id }}\" form=\"productForm{{ Product.id }}\">
  734.                                             {{ 'カートに入れる'|trans }}
  735.                                         </button>
  736.                                     </div>
  737.                                 {% else %}
  738.                                     <div class=\"ec-productRole__btn\">
  739.                                         <button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
  740.                                             {{ 'ただいま品切れ中です。'|trans }}
  741.                                         </button>
  742.                                     </div>
  743.                                 {% endif %}
  744.                             {% endif %}#}
  745.                         </li>
  746.                     {% endfor %}
  747.                 </ul>
  748.             </div>
  749.             <div class=\"ec-modal\">
  750.                 <div class=\"ec-modal-overlay\">
  751.                     <div class=\"ec-modal-wrap\">
  752.                         <span class=\"ec-modal-close\"><span class=\"ec-icon\"><img src=\"{{ asset('assets/icon/cross-dark.svg') }}\" alt=\"\"/></span></span>
  753.                         <div id=\"ec-modal-header\" class=\"text-center\">{{ 'カートに追加しました。'|trans }}</div>
  754.                         <div class=\"ec-modal-box\">
  755.                             <div class=\"ec-role\">
  756.                                 <span class=\"ec-inlineBtn--cancel\">{{ 'お買い物を続ける'|trans }}</span>
  757.                                 <a href=\"{{ url('cart') }}\" class=\"ec-inlineBtn--action\">{{ 'カートへ進む'|trans }}</a>
  758.                             </div>
  759.                         </div>
  760.                     </div>
  761.                 </div>
  762.             </div>
  763.             <div class=\"ec-pagerRole\">
  764.                 {% include \"pager.twig\" with {'pages': pagination.paginationData} %}
  765.             </div>
  766.         {% endif %}
  767.     {% endif %}
  768. {% endblock %}""Product/list.twig""/virtual/adnet/public_html/lemanze.awe.jp/app/template/default/Product/list.twig");
  769.     }
  770. }