var/cache/dev/twig/29/29af1ae1c9b22ddf84679933df56dc400d4afb261f093790730a4c17cdaee6df.php line 39

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_d52c9bf00976d332864271f4115023fb4ec9bdfe6fd71fe8dd3c0cb9749119f7 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_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  36.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Product/list.twig"));
  37.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  38.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_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_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  46.         
  47.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  48.     }
  49.     // line 15
  50.     public function block_javascript($context, array $blocks = [])
  51.     {
  52.         $macros $this->macros;
  53.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  54.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  55.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  56.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_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_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  182.         
  183.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  184.     }
  185.     // line 100
  186.     public function block_main($context, array $blocks = [])
  187.     {
  188.         $macros $this->macros;
  189.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  190.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  191.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  192.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_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 "        
  198. <div class=\"ec-searchnavRole\">
  199.             <p class=\"errormsg text-danger\">";
  200.             // line 104
  201.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ご指定のカテゴリは存在しません"), "html"nulltrue);
  202.             echo "</p>
  203.         </div>
  204.     ";
  205.         } else {
  206.             // line 107
  207.             echo "        <div class=\"ec-searchnavRole\">
  208.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  209.                 ";
  210.             // line 109
  211.             $context['_parent'] = $context;
  212.             $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.'109$this->source); })()));
  213.             foreach ($context['_seq'] as $context["_key"] => $context["item"]) {
  214.                 // line 110
  215.                 echo "                    <input type=\"hidden\" id=\"";
  216.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse110), "id", [], "any"falsefalsefalse110), "html"nulltrue);
  217.                 echo "\"
  218.                            name=\"";
  219.                 // line 111
  220.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse111), "full_name", [], "any"falsefalsefalse111), "html"nulltrue);
  221.                 echo "\"
  222.                            ";
  223.                 // line 112
  224.                 if ( !twig_test_empty(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse112), "value", [], "any"falsefalsefalse112))) {
  225.                     echo "value=\"";
  226.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse112), "value", [], "any"falsefalsefalse112), "html"nulltrue);
  227.                     echo "\" ";
  228.                 }
  229.                 echo "/>
  230.                 ";
  231.             }
  232.             $_parent $context['_parent'];
  233.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['item'], $context['_parent'], $context['loop']);
  234.             $context array_intersect_key($context$_parent) + $_parent;
  235.             // line 114
  236.             echo "            </form>
  237.             <div class=\"ec-searchnavRole__topicpath\">
  238.                 <ol class=\"ec-topicpath\">
  239.                     <li class=\"ec-topicpath__item\"><a href=\"";
  240.             // line 117
  241.             echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  242.             echo "\">";
  243.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("全て"), "html"nulltrue);
  244.             echo "</a>
  245.                     </li>
  246.                     ";
  247.             // line 119
  248.             if ( !(null === (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'119$this->source); })()))) {
  249.                 // line 120
  250.                 echo "                        ";
  251.                 $context['_parent'] = $context;
  252.                 $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.'120$this->source); })()), "path", [], "any"falsefalsefalse120));
  253.                 $context['loop'] = [
  254.                   'parent' => $context['_parent'],
  255.                   'index0' => 0,
  256.                   'index'  => 1,
  257.                   'first'  => true,
  258.                 ];
  259.                 if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  260.                     $length count($context['_seq']);
  261.                     $context['loop']['revindex0'] = $length 1;
  262.                     $context['loop']['revindex'] = $length;
  263.                     $context['loop']['length'] = $length;
  264.                     $context['loop']['last'] = === $length;
  265.                 }
  266.                 foreach ($context['_seq'] as $context["_key"] => $context["Path"]) {
  267.                     // line 121
  268.                     echo "                            <li class=\"ec-topicpath__divider\">|</li>
  269.                             <li class=\"ec-topicpath__item";
  270.                     // line 122
  271.                     if (twig_get_attribute($this->env$this->source$context["loop"], "last", [], "any"falsefalsefalse122)) {
  272.                         echo "--active";
  273.                     }
  274.                     echo "\"><a
  275.                                         href=\"";
  276.                     // line 123
  277.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  278.                     echo "?category_id=";
  279.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "id", [], "any"falsefalsefalse123), "html"nulltrue);
  280.                     echo "\">";
  281.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "name", [], "any"falsefalsefalse123), "html"nulltrue);
  282.                     echo "</a>
  283.                             </li>
  284.                         ";
  285.                     ++$context['loop']['index0'];
  286.                     ++$context['loop']['index'];
  287.                     $context['loop']['first'] = false;
  288.                     if (isset($context['loop']['length'])) {
  289.                         --$context['loop']['revindex0'];
  290.                         --$context['loop']['revindex'];
  291.                         $context['loop']['last'] = === $context['loop']['revindex0'];
  292.                     }
  293.                 }
  294.                 $_parent $context['_parent'];
  295.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Path'], $context['_parent'], $context['loop']);
  296.                 $context array_intersect_key($context$_parent) + $_parent;
  297.                 // line 126
  298.                 echo "                    ";
  299.             }
  300.             // line 127
  301.             echo "                    ";
  302.             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.'127$this->source); })()), "vars", [], "any"falsefalsefalse127), "value", [], "any"falsefalsefalse127) && 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.'127$this->source); })()), "vars", [], "any"falsefalsefalse127), "value", [], "any"falsefalsefalse127), "name", [], "any"falsefalsefalse127))) {
  303.                 // line 128
  304.                 echo "                        <li class=\"ec-topicpath__divider\">|</li>
  305.                         <li class=\"ec-topicpath__item\">";
  306.                 // line 129
  307.                 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.'129$this->source); })()), "vars", [], "any"falsefalsefalse129), "value", [], "any"falsefalsefalse129), "name", [], "any"falsefalsefalse129)]), "html"nulltrue);
  308.                 echo "</li>
  309.                     ";
  310.             }
  311.             // line 131
  312.             echo "                </ol>
  313.             </div>
  314.             <div class=\"ec-searchnavRole__infos\">
  315.                 <div class=\"ec-searchnavRole__counter\">
  316.                     ";
  317.             // line 135
  318.             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.'135$this->source); })()), "totalItemCount", [], "any"falsefalsefalse135) > 0)) {
  319.                 // line 136
  320.                 echo "                        ";
  321.                 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.'136$this->source); })()), "totalItemCount", [], "any"falsefalsefalse136)]);
  322.                 echo "
  323.                     ";
  324.             } else {
  325.                 // line 138
  326.                 echo "                        <span>";
  327.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お探しの商品は見つかりませんでした"), "html"nulltrue);
  328.                 echo "</span>
  329.                     ";
  330.             }
  331.             // line 140
  332.             echo "                </div>
  333.                 ";
  334.             // line 141
  335.             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.'141$this->source); })()), "totalItemCount", [], "any"falsefalsefalse141) > 0)) {
  336.                 // line 142
  337.                 echo "                    <div class=\"ec-searchnavRole__actions\">
  338.                         <div class=\"ec-select\">
  339.                             ";
  340.                 // line 144
  341.                 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.'144$this->source); })()), "disp_number", [], "any"falsefalsefalse144), 'widget', ["id" => """attr" => ["class" => "disp-number"]]);
  342.                 echo "
  343.                             ";
  344.                 // line 145
  345.                 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); })()), "orderby", [], "any"falsefalsefalse145), 'widget', ["id" => """attr" => ["class" => "order-by"]]);
  346.                 echo "
  347.                         </div>
  348.                     </div>
  349.                 ";
  350.             }
  351.             // line 149
  352.             echo "            </div>
  353.         </div>
  354.         ";
  355.             // line 151
  356.             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.'151$this->source); })()), "totalItemCount", [], "any"falsefalsefalse151) > 0)) {
  357.                 // line 152
  358.                 echo "            <div class=\"ec-shelfRole\">
  359.                 <ul class=\"ec-shelfGrid\">
  360.                     ";
  361.                 // line 154
  362.                 $context['_parent'] = $context;
  363.                 $context['_seq'] = twig_ensure_traversable((isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'154$this->source); })()));
  364.                 $context['loop'] = [
  365.                   'parent' => $context['_parent'],
  366.                   'index0' => 0,
  367.                   'index'  => 1,
  368.                   'first'  => true,
  369.                 ];
  370.                 if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  371.                     $length count($context['_seq']);
  372.                     $context['loop']['revindex0'] = $length 1;
  373.                     $context['loop']['revindex'] = $length;
  374.                     $context['loop']['length'] = $length;
  375.                     $context['loop']['last'] = === $length;
  376.                 }
  377.                 foreach ($context['_seq'] as $context["_key"] => $context["Product"]) {
  378.                     // line 155
  379.                     echo "                        <li class=\"ec-shelfGrid__item\">
  380.                             <a href=\"";
  381.                     // line 156
  382.                     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"falsefalsefalse156)]), "html"nulltrue);
  383.                     echo "\">
  384.                                 <p class=\"ec-shelfGrid__item-image\">
  385.                                     <img src=\"";
  386.                     // line 158
  387.                     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"falsefalsefalse158)), "save_image"), "html"nulltrue);
  388.                     echo "\" alt=\"";
  389.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse158), "html"nulltrue);
  390.                     echo "\" ";
  391.                     if ((twig_get_attribute($this->env$this->source$context["loop"], "index", [], "any"falsefalsefalse158) > 5)) {
  392.                         echo " loading=\"lazy\"";
  393.                     }
  394.                     echo ">
  395.                                 </p>
  396.                                 <p>";
  397.                     // line 160
  398.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse160), "html"nulltrue);
  399.                     echo "</p>
  400.                                 ";
  401.                     // line 161
  402.                     if (twig_get_attribute($this->env$this->source$context["Product"], "description_list", [], "any"falsefalsefalse161)) {
  403.                         // line 162
  404.                         echo "                                    <p>";
  405.                         echo twig_nl2br(twig_get_attribute($this->env$this->source$context["Product"], "description_list", [], "any"falsefalsefalse162));
  406.                         echo "</p>
  407.                                 ";
  408.                     }
  409.                     // line 164
  410.                     echo "                                <p class=\"price02-default\">
  411.                                     ";
  412.                     // line 165
  413.                     if (twig_get_attribute($this->env$this->source$context["Product"], "hasProductClass", [], "any"falsefalsefalse165)) {
  414.                         // line 166
  415.                         echo "                                        ";
  416.                         if ((twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Min", [], "any"falsefalsefalse166) == twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Max", [], "any"falsefalsefalse166))) {
  417.                             // line 167
  418.                             echo "                                            ";
  419.                             echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse167)), "html"nulltrue);
  420.                             echo "
  421.                                         ";
  422.                         } else {
  423.                             // line 169
  424.                             echo "                                            ";
  425.                             echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse169)), "html"nulltrue);
  426.                             echo " ~ ";
  427.                             echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMax", [], "any"falsefalsefalse169)), "html"nulltrue);
  428.                             echo "
  429.                                         ";
  430.                         }
  431.                         // line 171
  432.                         echo "                                    ";
  433.                     } else {
  434.                         // line 172
  435.                         echo "                                       本体価格";
  436.                         echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getPrice02Max", [], "any"falsefalsefalse172)), "html"nulltrue);
  437.                         echo "円 <br />
  438.                                        税込 ";
  439.                         // line 173
  440.                         echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse173)), "html"nulltrue);
  441.                         echo "円
  442.                                     ";
  443.                     }
  444.                     // line 175
  445.                     echo "                                </p>
  446.                             </a>
  447.                             ";
  448.                     // line 178
  449.                     if (twig_get_attribute($this->env$this->source$context["Product"], "stock_find", [], "any"falsefalsefalse178)) {
  450.                         // line 179
  451.                         echo "                                ";
  452.                         $context["form"] = twig_get_attribute($this->env$this->source, (isset($context["forms"]) || array_key_exists("forms"$context) ? $context["forms"] : (function () { throw new RuntimeError('Variable "forms" does not exist.'179$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse179), [], "array"falsefalsefalse179);
  453.                         // line 180
  454.                         echo "                                <form name=\"form";
  455.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse180), "html"nulltrue);
  456.                         echo "\" id=\"productForm";
  457.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse180), "html"nulltrue);
  458.                         echo "\" action=\"";
  459.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_add_cart", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse180)]), "html"nulltrue);
  460.                         echo "\" method=\"post\">
  461.                                     <div class=\"ec-productRole__actions\">
  462.                                         ";
  463.                         // line 182
  464.                         if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id1", [], "any"truetruefalse182)) {
  465.                             // line 183
  466.                             echo "                                            <div class=\"ec-select\">
  467.                                                 ";
  468.                             // line 184
  469.                             echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'184$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse184), 'widget');
  470.                             echo "
  471.                                                 ";
  472.                             // line 185
  473.                             echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'185$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse185), 'errors');
  474.                             echo "
  475.                                             </div>
  476.                                             ";
  477.                             // line 187
  478.                             if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id2", [], "any"truetruefalse187)) {
  479.                                 // line 188
  480.                                 echo "                                                <div class=\"ec-select\">
  481.                                                     ";
  482.                                 // line 189
  483.                                 echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'189$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse189), 'widget');
  484.                                 echo "
  485.                                                     ";
  486.                                 // line 190
  487.                                 echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'190$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse190), 'errors');
  488.                                 echo "
  489.                                                 </div>
  490.                                             ";
  491.                             }
  492.                             // line 193
  493.                             echo "                                        ";
  494.                         }
  495.                         // line 194
  496.                         echo "                                        <div class=\"ec-numberInput\"><span>";
  497.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("数量"), "html"nulltrue);
  498.                         echo "</span>
  499.                                             ";
  500.                         // line 195
  501.                         echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'195$this->source); })()), "quantity", [], "any"falsefalsefalse195), 'widget', ["attr" => ["class" => "quantity"]]);
  502.                         echo "
  503.                                             ";
  504.                         // line 196
  505.                         echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'196$this->source); })()), "quantity", [], "any"falsefalsefalse196), 'errors');
  506.                         echo "
  507.                                         </div>
  508.                                     </div>
  509.                                     ";
  510.                         // line 199
  511.                         echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock((isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'199$this->source); })()), 'rest');
  512.                         echo "
  513.                                 </form>
  514.                                 <div class=\"ec-productRole__btn\">
  515.                                     <button type=\"submit\" class=\"ec-blockBtn--action add-cart\" data-cartid=\"";
  516.                         // line 202
  517.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse202), "html"nulltrue);
  518.                         echo "\" form=\"productForm";
  519.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse202), "html"nulltrue);
  520.                         echo "\">
  521.                                         ";
  522.                         // line 203
  523.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに入れる"), "html"nulltrue);
  524.                         echo "
  525.                                     </button>
  526.                                 </div>
  527.                             ";
  528.                     } else {
  529.                         // line 207
  530.                         echo "                                <div class=\"ec-productRole__btn\">
  531.                                     <button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
  532.                                         ";
  533.                         // line 209
  534.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ただいま品切れ中です。"), "html"nulltrue);
  535.                         echo "
  536.                                     </button>
  537.                                 </div>
  538.                             ";
  539.                     }
  540.                     // line 213
  541.                     echo "                        </li>
  542.                     ";
  543.                     ++$context['loop']['index0'];
  544.                     ++$context['loop']['index'];
  545.                     $context['loop']['first'] = false;
  546.                     if (isset($context['loop']['length'])) {
  547.                         --$context['loop']['revindex0'];
  548.                         --$context['loop']['revindex'];
  549.                         $context['loop']['last'] = === $context['loop']['revindex0'];
  550.                     }
  551.                 }
  552.                 $_parent $context['_parent'];
  553.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Product'], $context['_parent'], $context['loop']);
  554.                 $context array_intersect_key($context$_parent) + $_parent;
  555.                 // line 215
  556.                 echo "                </ul>
  557.             </div>
  558.             <div class=\"ec-modal\">
  559.                 <div class=\"ec-modal-overlay\">
  560.                     <div class=\"ec-modal-wrap\">
  561.                         <span class=\"ec-modal-close\"><span class=\"ec-icon\"><img src=\"";
  562.                 // line 220
  563.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/icon/cross-dark.svg"), "html"nulltrue);
  564.                 echo "\" alt=\"\"/></span></span>
  565.                         <div id=\"ec-modal-header\" class=\"text-center\">";
  566.                 // line 221
  567.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに追加しました。"), "html"nulltrue);
  568.                 echo "</div>
  569.                         <div class=\"ec-modal-box\">
  570.                             <div class=\"ec-role\">
  571.                                 <span class=\"ec-inlineBtn--cancel\">";
  572.                 // line 224
  573.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お買い物を続ける"), "html"nulltrue);
  574.                 echo "</span>
  575.                                 <a href=\"";
  576.                 // line 225
  577.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("cart");
  578.                 echo "\" class=\"ec-inlineBtn--action\">";
  579.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへ進む"), "html"nulltrue);
  580.                 echo "</a>
  581.                             </div>
  582.                         </div>
  583.                     </div>
  584.                 </div>
  585.             </div>
  586.             <div class=\"ec-pagerRole\">
  587.                 ";
  588.                 // line 232
  589.                 $this->loadTemplate("pager.twig""Product/list.twig"232)->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.'232$this->source); })()), "paginationData", [], "any"falsefalsefalse232)]));
  590.                 // line 233
  591.                 echo "            </div>
  592.         ";
  593.             }
  594.             // line 235
  595.             echo "    ";
  596.         }
  597.         
  598.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  599.         
  600.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  601.     }
  602.     public function getTemplateName()
  603.     {
  604.         return "Product/list.twig";
  605.     }
  606.     public function isTraitable()
  607.     {
  608.         return false;
  609.     }
  610.     public function getDebugInfo()
  611.     {
  612.         return array (  623 => 235,  619 => 233,  617 => 232,  605 => 225,  601 => 224,  595 => 221,  591 => 220,  584 => 215,  569 => 213,  562 => 209,  558 => 207,  551 => 203,  545 => 202,  539 => 199,  533 => 196,  529 => 195,  524 => 194,  521 => 193,  515 => 190,  511 => 189,  508 => 188,  506 => 187,  501 => 185,  497 => 184,  494 => 183,  492 => 182,  482 => 180,  479 => 179,  477 => 178,  472 => 175,  467 => 173,  462 => 172,  459 => 171,  451 => 169,  445 => 167,  442 => 166,  440 => 165,  437 => 164,  431 => 162,  429 => 161,  425 => 160,  414 => 158,  409 => 156,  406 => 155,  389 => 154,  385 => 152,  383 => 151,  379 => 149,  372 => 145,  368 => 144,  364 => 142,  362 => 141,  359 => 140,  353 => 138,  347 => 136,  345 => 135,  339 => 131,  334 => 129,  331 => 128,  328 => 127,  325 => 126,  304 => 123,  298 => 122,  295 => 121,  277 => 120,  275 => 119,  268 => 117,  263 => 114,  251 => 112,  247 => 111,  242 => 110,  238 => 109,  234 => 107,  228 => 104,  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,);
  613.     }
  614.     public function getSourceContext()
  615.     {
  616.         return new Source("{#
  617. This file is part of EC-CUBE
  618. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  619. http://www.ec-cube.co.jp/
  620. For the full copyright and license information, please view the LICENSE
  621. file that was distributed with this source code.
  622. #}
  623. {% extends 'default_frame.twig' %}
  624. {% set body_class = 'product_page' %}
  625. {% block javascript %}
  626.     <script>
  627.         eccube.productsClassCategories = {
  628.             {% for Product in pagination %}
  629.             \"{{ Product.id|escape('js') }}\": {{ class_categories_as_json(Product)|raw }}{% if loop.last == false %}, {% endif %}
  630.             {% endfor %}
  631.         };
  632.         \$(function() {
  633.             // 表示件数を変更
  634.             \$('.disp-number').change(function() {
  635.                 var dispNumber = \$(this).val();
  636.                 \$('#disp_number').val(dispNumber);
  637.                 \$('#pageno').val(1);
  638.                 \$(\"#form1\").submit();
  639.             });
  640.             // 並び順を変更
  641.             \$('.order-by').change(function() {
  642.                 var orderBy = \$(this).val();
  643.                 \$('#orderby').val(orderBy);
  644.                 \$('#pageno').val(1);
  645.                 \$(\"#form1\").submit();
  646.             });
  647.             \$('.add-cart').on('click', function(e) {
  648.                 var \$form = \$(this).parents('li').find('form');
  649.                 // 個数フォームのチェック
  650.                 var \$quantity = \$form.parent().find('.quantity');
  651.                 if (\$quantity.val() < 1) {
  652.                     \$quantity[0].setCustomValidity('{{ '1以上で入力してください。'|trans }}');
  653.                     setTimeout(function() {
  654.                         loadingOverlay('hide');
  655.                     }, 100);
  656.                     return true;
  657.                 } else {
  658.                     \$quantity[0].setCustomValidity('');
  659.                 }
  660.                 e.preventDefault();
  661.                 \$.ajax({
  662.                     url: \$form.attr('action'),
  663.                     type: \$form.attr('method'),
  664.                     data: \$form.serialize(),
  665.                     dataType: 'json',
  666.                     beforeSend: function(xhr, settings) {
  667.                         // Buttonを無効にする
  668.                         \$('.add-cart').prop('disabled', true);
  669.                     }
  670.                 }).done(function(data) {
  671.                     // レスポンス内のメッセージをalertで表示
  672.                     \$.each(data.messages, function() {
  673.                         \$('#ec-modal-header').html(this);
  674.                     });
  675.                     \$('.ec-modal').show()
  676.                     // カートブロックを更新する
  677.                     \$.ajax({
  678.                         url: '{{ url('block_cart') }}',
  679.                         type: 'GET',
  680.                         dataType: 'html'
  681.                     }).done(function(html) {
  682.                         \$('.ec-headerRole__cart').html(html);
  683.                     });
  684.                 }).fail(function(data) {
  685.                     alert('{{ 'カートへの追加に失敗しました。'|trans }}');
  686.                 }).always(function(data) {
  687.                     // Buttonを有効にする
  688.                     \$('.add-cart').prop('disabled', false);
  689.                 });
  690.             });
  691.         });
  692.         \$('.ec-modal-wrap').on('click', function(e) {
  693.             // モーダル内の処理は外側にバブリングさせない
  694.             e.stopPropagation();
  695.         });
  696.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  697.             \$('.ec-modal').hide()
  698.         });
  699.     </script>
  700. {% endblock %}
  701. {% block main %}
  702.     {% if search_form.category_id.vars.errors|length > 0 %}
  703.         
  704. <div class=\"ec-searchnavRole\">
  705.             <p class=\"errormsg text-danger\">{{ 'ご指定のカテゴリは存在しません'|trans }}</p>
  706.         </div>
  707.     {% else %}
  708.         <div class=\"ec-searchnavRole\">
  709.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  710.                 {% for item in search_form %}
  711.                     <input type=\"hidden\" id=\"{{ item.vars.id }}\"
  712.                            name=\"{{ item.vars.full_name }}\"
  713.                            {% if item.vars.value is not empty %}value=\"{{ item.vars.value }}\" {% endif %}/>
  714.                 {% endfor %}
  715.             </form>
  716.             <div class=\"ec-searchnavRole__topicpath\">
  717.                 <ol class=\"ec-topicpath\">
  718.                     <li class=\"ec-topicpath__item\"><a href=\"{{ url('product_list') }}\">{{ '全て'|trans }}</a>
  719.                     </li>
  720.                     {% if Category is not null %}
  721.                         {% for Path in Category.path %}
  722.                             <li class=\"ec-topicpath__divider\">|</li>
  723.                             <li class=\"ec-topicpath__item{% if loop.last %}--active{% endif %}\"><a
  724.                                         href=\"{{ url('product_list') }}?category_id={{ Path.id }}\">{{ Path.name }}</a>
  725.                             </li>
  726.                         {% endfor %}
  727.                     {% endif %}
  728.                     {% if search_form.vars.value and search_form.vars.value.name %}
  729.                         <li class=\"ec-topicpath__divider\">|</li>
  730.                         <li class=\"ec-topicpath__item\">{{ '「%name%」の検索結果'|trans({ '%name%': search_form.vars.value.name }) }}</li>
  731.                     {% endif %}
  732.                 </ol>
  733.             </div>
  734.             <div class=\"ec-searchnavRole__infos\">
  735.                 <div class=\"ec-searchnavRole__counter\">
  736.                     {% if pagination.totalItemCount > 0 %}
  737.                         {{ '<span class=\"ec-font-bold\">%count%件</span><span>の商品が見つかりました</span>'|trans({ '%count%': pagination.totalItemCount })|raw }}
  738.                     {% else %}
  739.                         <span>{{ 'お探しの商品は見つかりませんでした'|trans }}</span>
  740.                     {% endif %}
  741.                 </div>
  742.                 {% if pagination.totalItemCount > 0 %}
  743.                     <div class=\"ec-searchnavRole__actions\">
  744.                         <div class=\"ec-select\">
  745.                             {{ form_widget(search_form.disp_number, {'id': '', 'attr': {'class': 'disp-number'}}) }}
  746.                             {{ form_widget(search_form.orderby, {'id': '', 'attr': {'class': 'order-by'}}) }}
  747.                         </div>
  748.                     </div>
  749.                 {% endif %}
  750.             </div>
  751.         </div>
  752.         {% if pagination.totalItemCount > 0 %}
  753.             <div class=\"ec-shelfRole\">
  754.                 <ul class=\"ec-shelfGrid\">
  755.                     {% for Product in pagination %}
  756.                         <li class=\"ec-shelfGrid__item\">
  757.                             <a href=\"{{ url('product_detail', {'id': Product.id}) }}\">
  758.                                 <p class=\"ec-shelfGrid__item-image\">
  759.                                     <img src=\"{{ asset(Product.main_list_image|no_image_product, 'save_image') }}\" alt=\"{{ Product.name }}\" {% if loop.index > 5 %} loading=\"lazy\"{% endif %}>
  760.                                 </p>
  761.                                 <p>{{ Product.name }}</p>
  762.                                 {% if Product.description_list %}
  763.                                     <p>{{ Product.description_list|raw|nl2br }}</p>
  764.                                 {% endif %}
  765.                                 <p class=\"price02-default\">
  766.                                     {% if Product.hasProductClass %}
  767.                                         {% if Product.getPrice02Min == Product.getPrice02Max %}
  768.                                             {{ Product.getPrice02IncTaxMin|price }}
  769.                                         {% else %}
  770.                                             {{ Product.getPrice02IncTaxMin|price }} ~ {{ Product.getPrice02IncTaxMax|price }}
  771.                                         {% endif %}
  772.                                     {% else %}
  773.                                        本体価格{{ Product.getPrice02Max|number_format  }}円 <br />
  774.                                        税込 {{ Product.getPrice02IncTaxMin|number_format }}円
  775.                                     {% endif %}
  776.                                 </p>
  777.                             </a>
  778.                             {% if Product.stock_find %}
  779.                                 {% set form = forms[Product.id] %}
  780.                                 <form name=\"form{{ Product.id }}\" id=\"productForm{{ Product.id }}\" action=\"{{ url('product_add_cart', {id:Product.id}) }}\" method=\"post\">
  781.                                     <div class=\"ec-productRole__actions\">
  782.                                         {% if form.classcategory_id1 is defined %}
  783.                                             <div class=\"ec-select\">
  784.                                                 {{ form_widget(form.classcategory_id1) }}
  785.                                                 {{ form_errors(form.classcategory_id1) }}
  786.                                             </div>
  787.                                             {% if form.classcategory_id2 is defined %}
  788.                                                 <div class=\"ec-select\">
  789.                                                     {{ form_widget(form.classcategory_id2) }}
  790.                                                     {{ form_errors(form.classcategory_id2) }}
  791.                                                 </div>
  792.                                             {% endif %}
  793.                                         {% endif %}
  794.                                         <div class=\"ec-numberInput\"><span>{{ '数量'|trans }}</span>
  795.                                             {{ form_widget(form.quantity, {'attr': {'class': 'quantity'}}) }}
  796.                                             {{ form_errors(form.quantity) }}
  797.                                         </div>
  798.                                     </div>
  799.                                     {{ form_rest(form) }}
  800.                                 </form>
  801.                                 <div class=\"ec-productRole__btn\">
  802.                                     <button type=\"submit\" class=\"ec-blockBtn--action add-cart\" data-cartid=\"{{ Product.id }}\" form=\"productForm{{ Product.id }}\">
  803.                                         {{ 'カートに入れる'|trans }}
  804.                                     </button>
  805.                                 </div>
  806.                             {% else %}
  807.                                 <div class=\"ec-productRole__btn\">
  808.                                     <button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
  809.                                         {{ 'ただいま品切れ中です。'|trans }}
  810.                                     </button>
  811.                                 </div>
  812.                             {% endif %}
  813.                         </li>
  814.                     {% endfor %}
  815.                 </ul>
  816.             </div>
  817.             <div class=\"ec-modal\">
  818.                 <div class=\"ec-modal-overlay\">
  819.                     <div class=\"ec-modal-wrap\">
  820.                         <span class=\"ec-modal-close\"><span class=\"ec-icon\"><img src=\"{{ asset('assets/icon/cross-dark.svg') }}\" alt=\"\"/></span></span>
  821.                         <div id=\"ec-modal-header\" class=\"text-center\">{{ 'カートに追加しました。'|trans }}</div>
  822.                         <div class=\"ec-modal-box\">
  823.                             <div class=\"ec-role\">
  824.                                 <span class=\"ec-inlineBtn--cancel\">{{ 'お買い物を続ける'|trans }}</span>
  825.                                 <a href=\"{{ url('cart') }}\" class=\"ec-inlineBtn--action\">{{ 'カートへ進む'|trans }}</a>
  826.                             </div>
  827.                         </div>
  828.                     </div>
  829.                 </div>
  830.             </div>
  831.             <div class=\"ec-pagerRole\">
  832.                 {% include \"pager.twig\" with {'pages': pagination.paginationData} %}
  833.             </div>
  834.         {% endif %}
  835.     {% endif %}
  836. {% endblock %}""Product/list.twig""/home/daiwafood/www/ec/app/template/mizunasu/Product/list.twig");
  837.     }
  838. }