var/cache/dev/twig/7a/7a4f21fe6a216bbceefe8044cc0d482136bd38780c5f5b7a39d91f99fb23b98d.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_95832afebacb1698ac1c51f50e3783621acf2ba7626afb1f3b438d888c51df75 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.             var modalTimer;
  118.             \$('.add-cart').on('click', function(e) {
  119.                 var self = \$(this);
  120.                 onAddCart(e, \$(this), 1, function() {
  121.                     var \$form = self.parents('li');
  122.                     \$form.find(\".ec-productRole__btn--only\").addClass(\"d-none\");
  123.                     \$form.find(\".ec-productRole__btn--group\").removeClass(\"d-none\");
  124.                     window.clearTimeout(modalTimer);
  125.                     \$('.ec-modal').show()
  126.                     modalTimer = window.setTimeout(function() {
  127.                         \$('.ec-modal').hide();
  128.                     }, 1500)
  129.                 });
  130.             });
  131.             \$('.minus__btn').on('click', function(e) {
  132.                 onAddCart(e, \$(this), -1);
  133.             })
  134.             \$('.plus__btn').on('click', function(e) {
  135.                 onAddCart(e, \$(this));
  136.             })
  137.             function onAddCart(e, self, quantity = 1, callback) {
  138.                 var \$form = \$(self).parents('li').find('form.productForm');
  139.                 // 個数フォームのチェック
  140.                 \$form.parent().find('.quantity').val(quantity);
  141.                 e.preventDefault();
  142.                 \$.ajax({
  143.                     url: \$form.attr('action'),
  144.                     type: \$form.attr('method'),
  145.                     data: \$form.serialize(),
  146.                     dataType: 'json',
  147.                     beforeSend: function(xhr, settings) {
  148.                         // Buttonを無効にする
  149.                         \$(self).prop('disabled', true);
  150.                     }
  151.                 }).done(function(data) {
  152.                     // レスポンス内のメッセージをalertで表示
  153.                     \$.each(data.messages, function() {
  154.                         \$('#ec-modal-header').text(this);
  155.                     });
  156.                     var \$quantityLabelEl = \$(self).parents('li').find('.quantity_label');
  157.                     \$quantityLabelEl.text(\$quantityLabelEl.text() * 1 + quantity * 1);
  158.                     if(callback) {
  159.                         callback();
  160.                     }
  161.                     // カートブロックを更新する
  162.                     \$.ajax({
  163.                         url: '";
  164.         // line 91
  165.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("block_cart");
  166.         echo "',
  167.                         type: 'GET',
  168.                         dataType: 'html'
  169.                     }).done(function(html) {
  170.                         \$('.ec-headerRole__cart').html(html);
  171.                     });
  172.                 }).fail(function(data) {
  173.                     alert('";
  174.         // line 98
  175.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへの追加に失敗しました。"), "html"nulltrue);
  176.         echo "');
  177.                     \$(self).prop('disabled', false);
  178.                 }).always(function(data) {
  179.                     var \$parent = \$(self).parents('li');
  180.                     let stockVal = \$parent.find('.stock').val() * 1;
  181.                     var \$quantityLabelEl = \$parent.find('.quantity_label');
  182.                     var _quantity = \$quantityLabelEl.text() * 1;
  183.                     if(_quantity == 0) {
  184.                         // enable minus button
  185.                         \$(self).prop('disabled', false);
  186.                         \$parent.find(\".ec-productRole__btn--only\").removeClass(\"d-none\");
  187.                         \$parent.find(\".ec-productRole__btn--group\").addClass(\"d-none\");
  188.                     }
  189.                     if(_quantity > 0 && _quantity < stockVal) {
  190.                         // Buttonを有効にする
  191.                         \$(self).prop('disabled', false);
  192.                         \$parent.find('.plus__btn').prop('disabled', false);
  193.                     }
  194.                 });
  195.             }
  196.         });
  197.         \$('.ec-modal-wrap').on('click', function(e) {
  198.             // モーダル内の処理は外側にバブリングさせない
  199.             e.stopPropagation();
  200.         });
  201.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  202.             \$('.ec-modal').hide()
  203.         });
  204.     </script>
  205. ";
  206.         
  207.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  208.         
  209.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  210.     }
  211.     // line 133
  212.     public function block_main($context, array $blocks = [])
  213.     {
  214.         $macros $this->macros;
  215.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  216.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  217.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  218.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  219.         // line 134
  220.         echo "    <div class=\"ec-searchnavRole__topicpath\">
  221.         <ul class=\"breadcrumb w-p\">
  222.             <li class=\"breadcrumb__item\">
  223.                 <a href=\"";
  224.         // line 137
  225.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  226.         echo "\" class=\"breadcrumb__item__link\">
  227.                     ホーム
  228.                 </a>
  229.             </li>
  230.             <li class=\"breadcrumb__item\">
  231.                 <p class=\"breadcrumb__item__arrow\">></p>
  232.             </li>
  233.             <li class=\"breadcrumb__item\">
  234.                 <a href=\"";
  235.         // line 145
  236.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  237.         echo "\" class=\"breadcrumb__item__link\">
  238.                     商品一覧
  239.                 </a>
  240.             </li>
  241.             ";
  242.         // line 149
  243.         if ( !(null === (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'149$this->source); })()))) {
  244.             // line 150
  245.             echo "                <li class=\"breadcrumb__item\">
  246.                     <p class=\"breadcrumb__item__arrow\">></p>
  247.                 </li>
  248.                 ";
  249.             // line 153
  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.'153$this->source); })()), "path", [], "any"falsefalsefalse153));
  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 154
  267.                 echo "                    ";
  268.                 if (((twig_get_attribute($this->env$this->source$context["Path"], "id", [], "any"falsefalsefalse154) != twig_constant("Customize\\Common\\Constant::MANUFACTURER_CATEGORY_ID")) && (twig_get_attribute($this->env$this->source,                 // line 155
  269. $context["Path"], "id", [], "any"falsefalsefalse155) != twig_constant("Customize\\Common\\Constant::DEFAULT_CATEGORY_ID")))) {
  270.                     // line 156
  271.                     echo "                        <li class=\"breadcrumb__item\">
  272.                             <a class=\"breadcrumb__item__link\" href=\"";
  273.                     // line 157
  274.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  275.                     echo "?category_id=";
  276.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "id", [], "any"falsefalsefalse157), "html"nulltrue);
  277.                     echo "\">";
  278.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "name", [], "any"falsefalsefalse157), "html"nulltrue);
  279.                     echo "</a>
  280.                         </li>";
  281.                     // line 159
  282.                     if ((twig_get_attribute($this->env$this->source$context["loop"], "last", [], "any"falsefalsefalse159) == false)) {
  283.                         // line 160
  284.                         echo "                            <li class=\"breadcrumb__item\">
  285.                                 <p class=\"breadcrumb__item__arrow\">></p>
  286.                             </li>
  287.                         ";
  288.                     }
  289.                 }
  290.                 // line 165
  291.                 echo "                ";
  292.                 ++$context['loop']['index0'];
  293.                 ++$context['loop']['index'];
  294.                 $context['loop']['first'] = false;
  295.                 if (isset($context['loop']['length'])) {
  296.                     --$context['loop']['revindex0'];
  297.                     --$context['loop']['revindex'];
  298.                     $context['loop']['last'] = === $context['loop']['revindex0'];
  299.                 }
  300.             }
  301.             $_parent $context['_parent'];
  302.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Path'], $context['_parent'], $context['loop']);
  303.             $context array_intersect_key($context$_parent) + $_parent;
  304.             // line 166
  305.             echo "            ";
  306.         }
  307.         // line 167
  308.         echo "            ";
  309.         // line 171
  310.         echo "        </ul>
  311.     </div>
  312.     <div class=\"ec-pageHeader contentHeader\">
  313.         <h1>";
  314.         // line 174
  315.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("商品一覧"), "html"nulltrue);
  316.         echo "</h1>
  317.     </div>
  318.     ";
  319.         // line 176
  320.         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.'176$this->source); })()), "category_id", [], "any"falsefalsefalse176), "vars", [], "any"falsefalsefalse176), "errors", [], "any"falsefalsefalse176)) > 0)) {
  321.             // line 177
  322.             echo "        <div class=\"ec-searchnavRole\">
  323.             <p class=\"errormsg text-danger\">";
  324.             // line 178
  325.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ご指定のカテゴリは存在しません"), "html"nulltrue);
  326.             echo "</p>
  327.         </div>
  328.     ";
  329.         } else {
  330.             // line 181
  331.             echo "        <div class=\"ec-searchnavRole\">
  332.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  333.                 ";
  334.             // line 183
  335.             $context['_parent'] = $context;
  336.             $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.'183$this->source); })()));
  337.             foreach ($context['_seq'] as $context["_key"] => $context["item"]) {
  338.                 // line 184
  339.                 echo "                    <input type=\"hidden\" id=\"";
  340.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse184), "id", [], "any"falsefalsefalse184), "html"nulltrue);
  341.                 echo "\"
  342.                            name=\"";
  343.                 // line 185
  344.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse185), "full_name", [], "any"falsefalsefalse185), "html"nulltrue);
  345.                 echo "\"
  346.                            ";
  347.                 // line 186
  348.                 if ( !twig_test_empty(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse186), "value", [], "any"falsefalsefalse186))) {
  349.                     echo "value=\"";
  350.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse186), "value", [], "any"falsefalsefalse186), "html"nulltrue);
  351.                     echo "\" ";
  352.                 }
  353.                 echo "/>
  354.                 ";
  355.             }
  356.             $_parent $context['_parent'];
  357.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['item'], $context['_parent'], $context['loop']);
  358.             $context array_intersect_key($context$_parent) + $_parent;
  359.             // line 188
  360.             echo "            </form>
  361.             <div class=\"ec-searchnavRole__infos\">
  362.                 <div class=\"ec-searchnavRole__counter\">
  363.                     ";
  364.             // line 191
  365.             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.'191$this->source); })()), "totalItemCount", [], "any"falsefalsefalse191) > 0)) {
  366.                 // line 192
  367.                 echo "                        <p class=\"ec-searchnavRole__counter__title\">検索結果</p>
  368.                         ";
  369.                 // line 193
  370.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("<p class=\"ec-searchnavRole__counter__number\">%count%件</p>", ["%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.'193$this->source); })()), "totalItemCount", [], "any"falsefalsefalse193)]);
  371.                 echo "
  372.                     ";
  373.             } else {
  374.                 // line 195
  375.                 echo "                        <span>";
  376.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お探しの商品は見つかりませんでした"), "html"nulltrue);
  377.                 echo "</span>
  378.                     ";
  379.             }
  380.             // line 197
  381.             echo "                </div>
  382.                 ";
  383.             // line 198
  384.             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.'198$this->source); })()), "totalItemCount", [], "any"falsefalsefalse198) > 0)) {
  385.                 // line 199
  386.                 echo "                    <div class=\"ec-searchnavRole__actions\">
  387.                         <div class=\"ec-select\">
  388.                             ";
  389.                 // line 201
  390.                 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.'201$this->source); })()), "disp_number", [], "any"falsefalsefalse201), 'widget', ["id" => """attr" => ["class" => "disp-number"]]);
  391.                 echo "
  392.                             ";
  393.                 // line 202
  394.                 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.'202$this->source); })()), "orderby", [], "any"falsefalsefalse202), 'widget', ["id" => """attr" => ["class" => "order-by"]]);
  395.                 echo "
  396.                         </div>
  397.                     </div>
  398.                 ";
  399.             }
  400.             // line 206
  401.             echo "            </div>
  402.         </div>
  403.         <ul class=\"stockList\">
  404.             <li class=\"stockList__block\">
  405.                 <p class=\"stockList__block__text\">在庫あり:</p>
  406.                 <p class=\"stockList__block__mark\">◎</p>
  407.             </li>
  408.             <li class=\"stockList__block\">
  409.                 <p class=\"stockList__block__text\">残りわずか:</p>
  410.                 <p class=\"stockList__block__mark\">○</p>
  411.             </li>
  412.             <li class=\"stockList__block\">
  413.                 <p class=\"stockList__block__text\">取り寄せ:</p>
  414.                 <p class=\"stockList__block__mark\">■</p>
  415.             </li>
  416.         </ul>
  417.         ";
  418.             // line 222
  419.             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.'222$this->source); })()), "totalItemCount", [], "any"falsefalsefalse222) > 0)) {
  420.                 // line 223
  421.                 echo "            ";
  422.                 if ((isset($context["isShowProductImage"]) || array_key_exists("isShowProductImage"$context) ? $context["isShowProductImage"] : (function () { throw new RuntimeError('Variable "isShowProductImage" does not exist.'223$this->source); })())) {
  423.                     // line 224
  424.                     echo "            <div class=\"ec-shelfRole\">
  425.                 <ul class=\"ec-shelfGrid\">
  426.                     ";
  427.                     // line 226
  428.                     $context['_parent'] = $context;
  429.                     $context['_seq'] = twig_ensure_traversable((isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'226$this->source); })()));
  430.                     $context['loop'] = [
  431.                       'parent' => $context['_parent'],
  432.                       'index0' => 0,
  433.                       'index'  => 1,
  434.                       'first'  => true,
  435.                     ];
  436.                     if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  437.                         $length count($context['_seq']);
  438.                         $context['loop']['revindex0'] = $length 1;
  439.                         $context['loop']['revindex'] = $length;
  440.                         $context['loop']['length'] = $length;
  441.                         $context['loop']['last'] = === $length;
  442.                     }
  443.                     foreach ($context['_seq'] as $context["_key"] => $context["Product"]) {
  444.                         // line 227
  445.                         echo "                        <li class=\"ec-shelfGrid__item\">
  446.                             <a href=\"";
  447.                         // line 228
  448.                         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"falsefalsefalse228)]), "html"nulltrue);
  449.                         echo "\">
  450.                                 <div class=\"ec-shelfGrid__item-image\">
  451.                                     <img src=\"";
  452.                         // line 230
  453.                         echo twig_escape_filter($this->env$this->extensions['Liip\ImagineBundle\Templating\FilterExtension']->filter($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"falsefalsefalse230)), "save_image"), "resize", ["thumbnail" => ["size" => [=> 250=> 250]]]), "html"nulltrue);
  454.                         // line 231
  455.                         echo "\" alt=\"";
  456.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse231), "html"nulltrue);
  457.                         echo "\" ";
  458.                         if ((twig_get_attribute($this->env$this->source$context["loop"], "index", [], "any"falsefalsefalse231) > 5)) {
  459.                             echo " loading=\"lazy\"";
  460.                         }
  461.                         echo ">
  462.                                     ";
  463.                         // line 232
  464.                         if ((twig_length_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "Tags", [], "any"falsefalsefalse232)) > 0)) {
  465.                             // line 233
  466.                             echo "                                    <ul class=\"ec-shelfGrid__item-tags\">
  467.                                         ";
  468.                             // line 234
  469.                             $context['_parent'] = $context;
  470.                             $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source$context["Product"], "Tags", [], "any"falsefalsefalse234));
  471.                             foreach ($context['_seq'] as $context["_key"] => $context["Tag"]) {
  472.                                 // line 235
  473.                                 echo "                                            <li class=\"ec-shelfGrid__item-tags__tag tag_";
  474.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Tag"], "id", [], "any"falsefalsefalse235), "html"nulltrue);
  475.                                 echo "\">";
  476.                                 echo twig_escape_filter($this->env$context["Tag"], "html"nulltrue);
  477.                                 echo "</li>
  478.                                         ";
  479.                             }
  480.                             $_parent $context['_parent'];
  481.                             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Tag'], $context['_parent'], $context['loop']);
  482.                             $context array_intersect_key($context$_parent) + $_parent;
  483.                             // line 237
  484.                             echo "                                    </ul>
  485.                                     ";
  486.                         }
  487.                         // line 239
  488.                         echo "                                </div>
  489.                                 <p class=\"ec-shelfGrid__item-name\">";
  490.                         // line 240
  491.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse240), "html"nulltrue);
  492.                         echo "</p>
  493.                                 ";
  494.                         // line 241
  495.                         if ($this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_USER")) {
  496.                             // line 242
  497.                             echo "
  498.                                 <div class=\"ec-shelfGrid__item-stock\">
  499.                                     <div class=\"ec-shelfGrid__item-stock__block\">
  500.                                         <p class=\"ec-shelfGrid__item-stock__block__title\">
  501.                                             【発送目安】
  502.                                         </p>
  503.                                         <p class=\"ec-shelfGrid__item-stock__block__detail\">
  504.                                             ";
  505.                             // line 249
  506.                             if (twig_get_attribute($this->env$this->source$context["Product"], "getDeliveryDuration", [], "any"falsefalsefalse249)) {
  507.                                 // line 250
  508.                                 echo "                                                ";
  509.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["Product"], "getDeliveryDuration", [], "any"falsefalsefalse250), "name", [], "any"falsefalsefalse250), "html"nulltrue);
  510.                                 echo "
  511.                                             ";
  512.                             } else {
  513.                                 // line 252
  514.                                 echo "                                                指定なし
  515.                                             ";
  516.                             }
  517.                             // line 254
  518.                             echo "                                        </p>
  519.                                     </div>
  520.                                     <div class=\"ec-shelfGrid__item-stock__block\">
  521.                                         <p class=\"ec-shelfGrid__item-stock__block__title\">
  522.                                             【在庫】
  523.                                         </p>
  524.                                         ";
  525.                             // line 261
  526.                             echo "                                        <p class=\"ec-shelfGrid__item-stock__block__detail\">
  527.                                             ";
  528.                             // line 262
  529.                             if ((twig_get_attribute($this->env$this->source$context["Product"], "getStockUnlimitedMin", [], "any"falsefalsefalse262) || (twig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse262) >= 10))) {
  530.                                 // line 263
  531.                                 echo "                                                ◎
  532.                                             ";
  533.                             } else {
  534.                                 // line 265
  535.                                 echo "                                                ";
  536.                                 if (((twig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse265) >= 1) && (twig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse265) <= 9))) {
  537.                                     // line 266
  538.                                     echo "                                                    ○
  539.                                                 ";
  540.                                 }
  541.                                 // line 268
  542.                                 echo "                                                ";
  543.                                 if ((twig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse268) <= 0)) {
  544.                                     // line 269
  545.                                     echo "                                                    ■
  546.                                                 ";
  547.                                 }
  548.                                 // line 271
  549.                                 echo "                                            ";
  550.                             }
  551.                             // line 272
  552.                             echo "                                        </p>
  553.                                     </div>
  554.                                 </div>
  555.                                 ";
  556.                             // line 280
  557.                             echo "                                ";
  558.                             if (twig_get_attribute($this->env$this->source$context["Product"], "description_list", [], "any"falsefalsefalse280)) {
  559.                                 // line 281
  560.                                 echo "                                    <p>";
  561.                                 echo twig_nl2br(twig_get_attribute($this->env$this->source$context["Product"], "description_list", [], "any"falsefalsefalse281));
  562.                                 echo "</p>
  563.                                 ";
  564.                             }
  565.                             // line 283
  566.                             echo "                                <div class=\"ec-shelfGrid__item-flex\">
  567.                                     <p class=\"price02-default ec-shelfGrid__item-price\">
  568.                                         ";
  569.                             // line 285
  570.                             if (twig_get_attribute($this->env$this->source$context["Product"], "isInSale", [], "any"falsefalsefalse285)) {
  571.                                 // line 286
  572.                                 echo "                                            <span class=\"ec-shelfGrid__item-price__sale\">セール商品</span>
  573.                                         ";
  574.                             }
  575.                             // line 288
  576.                             echo "                                        ";
  577.                             if (twig_get_attribute($this->env$this->source$context["Product"], "hasProductClass", [], "any"falsefalsefalse288)) {
  578.                                 // line 289
  579.                                 echo "                                            ";
  580.                                 if ((twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Min", [], "any"falsefalsefalse289) == twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Max", [], "any"falsefalsefalse289))) {
  581.                                     // line 290
  582.                                     echo "                                                ";
  583.                                     echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse290)), "html"nulltrue);
  584.                                     echo "
  585.                                             ";
  586.                                 } else {
  587.                                     // line 292
  588.                                     echo "                                                ";
  589.                                     echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse292)), "html"nulltrue);
  590.                                     echo " ~ ";
  591.                                     echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMax", [], "any"falsefalsefalse292)), "html"nulltrue);
  592.                                     echo "
  593.                                             ";
  594.                                 }
  595.                                 // line 294
  596.                                 echo "                                        ";
  597.                             } else {
  598.                                 // line 295
  599.                                 echo "                                            ";
  600.                                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse295)), "html"nulltrue);
  601.                                 echo "
  602.                                         ";
  603.                             }
  604.                             // line 297
  605.                             echo "                                    </p>
  606.                                     <div class=\"ec-shelfGrid__item-flex__favorite\">
  607.                                         <form class=\"ec-favoriteForm\" action=\"?\" method=\"?\">
  608.                                             <div class=\"ec-productRole__btn\">
  609.                                                 <button data-method=\"POST\" data-action=\"";
  610.                             // line 301
  611.                             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_add_favorite", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse301)]), "html"nulltrue);
  612.                             echo "\" id=\"favorite\" class=\"";
  613.                             if ((twig_get_attribute($this->env$this->source, ($context["isFavorite"] ?? null), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse301), [], "array"truetruefalse301) && (twig_get_attribute($this->env$this->source, (isset($context["isFavorite"]) || array_key_exists("isFavorite"$context) ? $context["isFavorite"] : (function () { throw new RuntimeError('Variable "isFavorite" does not exist.'301$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse301), [], "array"falsefalsefalse301) == true))) {
  614.                                 echo " d-none ";
  615.                             }
  616.                             echo " ec-blockFavoriteBtn ec-blockBtn--cancel ec-shelfGrid__item-flex__favorite__btn\">
  617.                                                     <img src=\"";
  618.                             // line 302
  619.                             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/img/favorite/before.svg"), "html"nulltrue);
  620.                             echo "\" alt=\"お気に入り\" width=\"24\" height=\"24\" loading=\"lazy\">
  621.                                                 </button>
  622.                                                 <button data-method=\"DELETE\" data-action=\"";
  623.                             // line 304
  624.                             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_favorite_delete", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse304)]), "html"nulltrue);
  625.                             echo "\" id=\"favorite\" class=\"";
  626.                             if ((twig_get_attribute($this->env$this->source, ($context["isFavorite"] ?? null), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse304), [], "array"truetruefalse304) && (twig_get_attribute($this->env$this->source, (isset($context["isFavorite"]) || array_key_exists("isFavorite"$context) ? $context["isFavorite"] : (function () { throw new RuntimeError('Variable "isFavorite" does not exist.'304$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse304), [], "array"falsefalsefalse304) == false))) {
  627.                                 echo " d-none ";
  628.                             }
  629.                             echo "ec-blockFavoriteBtnDisable ec-blockBtn--cancel ec-shelfGrid__item-flex__favorite__btn\">
  630.                                                    <img src=\"";
  631.                             // line 305
  632.                             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/img/favorite/after.svg"), "html"nulltrue);
  633.                             echo "\" alt=\"お気に入り\" width=\"24\" height=\"24\" loading=\"lazy\">
  634.                                                 </button>
  635.                                             </div>
  636.                                         </form>
  637.                                     </div>
  638.                                 </div>
  639.                                 ";
  640.                         }
  641.                         // line 312
  642.                         echo "                            </a>
  643.                             ";
  644.                         // line 313
  645.                         if ($this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_USER")) {
  646.                             // line 314
  647.                             echo "                                ";
  648.                             if ((( !twig_get_attribute($this->env$this->source$context["Product"], "getStockUnlimitedMin", [], "any"falsefalsefalse314) && (twig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse314) <= 0)) && twig_get_attribute($this->env$this->source$context["Product"], "isStockDiscontinued", [], "any"falsefalsefalse314))) {
  649.                                 // line 315
  650.                                 echo "                                    <div class=\"ec-productRole__btn\">
  651.                                         <button type=\"button\" class=\"ec-disabled__btn\" disabled=\"disabled\">
  652.                                             ";
  653.                                 // line 317
  654.                                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("在庫なし"), "html"nulltrue);
  655.                                 echo "
  656.                                         </button>
  657.                                     </div>
  658.                                 ";
  659.                             } else {
  660.                                 // line 321
  661.                                 echo "                                    ";
  662.                                 $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.'321$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse321), [], "array"falsefalsefalse321);
  663.                                 // line 322
  664.                                 echo "                                    <form class=\"productForm\" name=\"form";
  665.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse322), "html"nulltrue);
  666.                                 echo "\" id=\"productForm";
  667.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse322), "html"nulltrue);
  668.                                 echo "\" action=\"";
  669.                                 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"falsefalsefalse322)]), "html"nulltrue);
  670.                                 echo "\" method=\"post\">
  671.                                         <div class=\"ec-productRole__actions\">
  672.                                             ";
  673.                                 // line 324
  674.                                 if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id1", [], "any"truetruefalse324)) {
  675.                                     // line 325
  676.                                     echo "                                                <div class=\"ec-select\">
  677.                                                     ";
  678.                                     // line 326
  679.                                     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.'326$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse326), 'widget');
  680.                                     echo "
  681.                                                     ";
  682.                                     // line 327
  683.                                     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.'327$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse327), 'errors');
  684.                                     echo "
  685.                                                 </div>
  686.                                                 ";
  687.                                     // line 329
  688.                                     if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id2", [], "any"truetruefalse329)) {
  689.                                         // line 330
  690.                                         echo "                                                    <div class=\"ec-select\">
  691.                                                         ";
  692.                                         // line 331
  693.                                         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.'331$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse331), 'widget');
  694.                                         echo "
  695.                                                         ";
  696.                                         // line 332
  697.                                         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.'332$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse332), 'errors');
  698.                                         echo "
  699.                                                     </div>
  700.                                                 ";
  701.                                     }
  702.                                     // line 335
  703.                                     echo "                                            ";
  704.                                 }
  705.                                 // line 336
  706.                                 echo "                                                <div class=\"ec-numberInput d-none\"><span>";
  707.                                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("数量"), "html"nulltrue);
  708.                                 echo "</span>
  709.                                                     ";
  710.                                 // line 337
  711.                                 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.'337$this->source); })()), "quantity", [], "any"falsefalsefalse337), 'widget', ["attr" => ["class" => "quantity"]]);
  712.                                 echo "
  713.                                                     ";
  714.                                 // line 338
  715.                                 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.'338$this->source); })()), "quantity", [], "any"falsefalsefalse338), 'errors');
  716.                                 echo "
  717.                                                 </div>
  718.                                         
  719.                                         </div>
  720.                                         ";
  721.                                 // line 342
  722.                                 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.'342$this->source); })()), 'rest');
  723.                                 echo "
  724.                                     </form>
  725.                                     ";
  726.                                 // line 344
  727.                                 $context["default"] = 0;
  728.                                 // line 345
  729.                                 echo "                                    ";
  730.                                 if (twig_get_attribute($this->env$this->source, ($context["itemInCart"] ?? null), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse345), [], "array"truetruefalse345)) {
  731.                                     // line 346
  732.                                     echo "                                        ";
  733.                                     $context["default"] = twig_get_attribute($this->env$this->source, (isset($context["itemInCart"]) || array_key_exists("itemInCart"$context) ? $context["itemInCart"] : (function () { throw new RuntimeError('Variable "itemInCart" does not exist.'346$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse346), [], "array"falsefalsefalse346);
  734.                                     // line 347
  735.                                     echo "                                    ";
  736.                                 }
  737.                                 // line 348
  738.                                 echo "                                    ";
  739.                                 $context["disabled"] = false;
  740.                                 // line 349
  741.                                 echo "                                    ";
  742.                                 if ( !twig_get_attribute($this->env$this->source$context["Product"], "isStockDiscontinued", [], "any"falsefalsefalse349)) {
  743.                                     // line 350
  744.                                     echo "                                        <input type=\"hidden\" name=\"stock\" class=\"stock\" value=\"999999999999\">
  745.                                     ";
  746.                                 } else {
  747.                                     // line 352
  748.                                     echo "                                        ";
  749.                                     if ((twig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse352) <= (isset($context["default"]) || array_key_exists("default"$context) ? $context["default"] : (function () { throw new RuntimeError('Variable "default" does not exist.'352$this->source); })()))) {
  750.                                         // line 353
  751.                                         echo "                                            ";
  752.                                         $context["disabled"] = true;
  753.                                         // line 354
  754.                                         echo "                                        ";
  755.                                     }
  756.                                     // line 355
  757.                                     echo "                                        <input type=\"hidden\" name=\"stock\" class=\"stock\" value=\"";
  758.                                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getStockMin", [], "any"falsefalsefalse355), "html"nulltrue);
  759.                                     echo "\">
  760.                                     ";
  761.                                 }
  762.                                 // line 357
  763.                                 echo "                                    <div class=\"ec-productRole__btn--group ec-productRole__btn ";
  764.                                 if (twig_get_attribute($this->env$this->source, ($context["itemInCart"] ?? null), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse357), [], "array"truetruefalse357)) {
  765.                                     echo " d-block ";
  766.                                 } else {
  767.                                     echo " d-none ";
  768.                                 }
  769.                                 echo "\">
  770.                                         <div class=\"d-flex align-items-center ec-productRole__btn-wrapper\">
  771.                                             <button class=\"minus__btn\" data-cartid=\"";
  772.                                 // line 359
  773.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse359), "html"nulltrue);
  774.                                 echo "\" form=\"productForm";
  775.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse359), "html"nulltrue);
  776.                                 echo "\">
  777.                                                 <span>−</span>
  778.                                             </button>
  779.                                             <span class=\"quantity_label\">";
  780.                                 // line 362
  781.                                 echo twig_escape_filter($this->env, (isset($context["default"]) || array_key_exists("default"$context) ? $context["default"] : (function () { throw new RuntimeError('Variable "default" does not exist.'362$this->source); })()), "html"nulltrue);
  782.                                 echo "</span>
  783.                                             <button class=\"plus__btn\" data-cartid=\"";
  784.                                 // line 363
  785.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse363), "html"nulltrue);
  786.                                 echo "\" form=\"productForm";
  787.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse363), "html"nulltrue);
  788.                                 echo "\" ";
  789.                                 if ((isset($context["disabled"]) || array_key_exists("disabled"$context) ? $context["disabled"] : (function () { throw new RuntimeError('Variable "disabled" does not exist.'363$this->source); })())) {
  790.                                     echo "disabled";
  791.                                 }
  792.                                 echo ">
  793.                                                 <span>+</span>
  794.                                             </button>
  795.                                         </div>
  796.                                     </div>
  797.                                     <div class=\"ec-productRole__btn--only ec-productRole__btn ";
  798.                                 // line 368
  799.                                 if (twig_get_attribute($this->env$this->source, ($context["itemInCart"] ?? null), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse368), [], "array"truetruefalse368)) {
  800.                                     echo " d-none ";
  801.                                 } else {
  802.                                     echo " d-block ";
  803.                                 }
  804.                                 echo "\">
  805.                                         <button type=\"submit\" class=\"ec-regular__btn add-cart\" data-cartid=\"";
  806.                                 // line 369
  807.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse369), "html"nulltrue);
  808.                                 echo "\" form=\"productForm";
  809.                                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse369), "html"nulltrue);
  810.                                 echo "\">
  811.                                             ";
  812.                                 // line 370
  813.                                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに入れる"), "html"nulltrue);
  814.                                 echo "
  815.                                         </button>
  816.                                     </div>
  817.                                 ";
  818.                             }
  819.                             // line 374
  820.                             echo "                            ";
  821.                         } else {
  822.                             // line 375
  823.                             echo "                                <a href=\"";
  824.                             echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("entry_contact");
  825.                             echo "\" class=\"ec-blockProductBtn--action\">会員登録はこちら</a>
  826.                             ";
  827.                         }
  828.                         // line 377
  829.                         echo "                        </li>
  830.                     ";
  831.                         ++$context['loop']['index0'];
  832.                         ++$context['loop']['index'];
  833.                         $context['loop']['first'] = false;
  834.                         if (isset($context['loop']['length'])) {
  835.                             --$context['loop']['revindex0'];
  836.                             --$context['loop']['revindex'];
  837.                             $context['loop']['last'] = === $context['loop']['revindex0'];
  838.                         }
  839.                     }
  840.                     $_parent $context['_parent'];
  841.                     unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Product'], $context['_parent'], $context['loop']);
  842.                     $context array_intersect_key($context$_parent) + $_parent;
  843.                     // line 379
  844.                     echo "                </ul>
  845.             </div>
  846.             ";
  847.                 } else {
  848.                     // line 382
  849.                     echo "                <div class=\"ec-shelfRole\">
  850.                     ";
  851.                     // line 383
  852.                     $this->loadTemplate("Block/product_table.twig""Product/list.twig"383)->display(twig_array_merge($context, ["pagination" => (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'383$this->source); })()), "itemInCart" => (isset($context["itemInCart"]) || array_key_exists("itemInCart"$context) ? $context["itemInCart"] : (function () { throw new RuntimeError('Variable "itemInCart" does not exist.'383$this->source); })()), "forms" => (isset($context["forms"]) || array_key_exists("forms"$context) ? $context["forms"] : (function () { throw new RuntimeError('Variable "forms" does not exist.'383$this->source); })())]));
  853.                     // line 384
  854.                     echo "                </div>
  855.             ";
  856.                 }
  857.                 // line 386
  858.                 echo "            <div class=\"ec-modal\">
  859.                 <div class=\"ec-modal-overlay\">
  860.                     <div class=\"ec-modal-wrap\">
  861.                         <div class=\"ec-modal-box\">
  862.                             <div class=\"ec-role\">
  863.                                 <div class=\"ec-modal-icon\">
  864.                                     <img src=\"";
  865.                 // line 392
  866.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/img/icon/icon_cart.png""user_data"), "html"nulltrue);
  867.                 echo "\" alt=\"\">
  868.                                 </div>
  869.                             </div>
  870.                         </div>
  871.                         <div id=\"ec-modal-header\" class=\"text-center\">";
  872.                 // line 396
  873.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに追加しました。"), "html"nulltrue);
  874.                 echo "</div>
  875.                     </div>
  876.                 </div>
  877.             </div>
  878.             <ul class=\"stockList bottom\">
  879.                 <li class=\"stockList__block\">
  880.                     <p class=\"stockList__block__text\">在庫あり:</p>
  881.                     <p class=\"stockList__block__mark\">◎</p>
  882.                 </li>
  883.                 <li class=\"stockList__block\">
  884.                     <p class=\"stockList__block__text\">残りわずか:</p>
  885.                     <p class=\"stockList__block__mark\">○</p>
  886.                 </li>
  887.                 <li class=\"stockList__block\">
  888.                     <p class=\"stockList__block__text\">取り寄せ:</p>
  889.                     <p class=\"stockList__block__mark\">■</p>
  890.                 </li>
  891.             </ul>
  892.             <div class=\"ec-pagerRole\">
  893.                 ";
  894.                 // line 415
  895.                 $this->loadTemplate("pager.twig""Product/list.twig"415)->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.'415$this->source); })()), "paginationData", [], "any"falsefalsefalse415)]));
  896.                 // line 416
  897.                 echo "            </div>
  898.         ";
  899.             }
  900.             // line 418
  901.             echo "    ";
  902.         }
  903.         
  904.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  905.         
  906.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  907.     }
  908.     public function getTemplateName()
  909.     {
  910.         return "Product/list.twig";
  911.     }
  912.     public function isTraitable()
  913.     {
  914.         return false;
  915.     }
  916.     public function getDebugInfo()
  917.     {
  918.         return array (  932 => 418,  928 => 416,  926 => 415,  904 => 396,  897 => 392,  889 => 386,  885 => 384,  883 => 383,  880 => 382,  875 => 379,  860 => 377,  854 => 375,  851 => 374,  844 => 370,  838 => 369,  830 => 368,  816 => 363,  812 => 362,  804 => 359,  794 => 357,  788 => 355,  785 => 354,  782 => 353,  779 => 352,  775 => 350,  772 => 349,  769 => 348,  766 => 347,  763 => 346,  760 => 345,  758 => 344,  753 => 342,  746 => 338,  742 => 337,  737 => 336,  734 => 335,  728 => 332,  724 => 331,  721 => 330,  719 => 329,  714 => 327,  710 => 326,  707 => 325,  705 => 324,  695 => 322,  692 => 321,  685 => 317,  681 => 315,  678 => 314,  676 => 313,  673 => 312,  663 => 305,  655 => 304,  650 => 302,  642 => 301,  636 => 297,  630 => 295,  627 => 294,  619 => 292,  613 => 290,  610 => 289,  607 => 288,  603 => 286,  601 => 285,  597 => 283,  591 => 281,  588 => 280,  583 => 272,  580 => 271,  576 => 269,  573 => 268,  569 => 266,  566 => 265,  562 => 263,  560 => 262,  557 => 261,  549 => 254,  545 => 252,  539 => 250,  537 => 249,  528 => 242,  526 => 241,  522 => 240,  519 => 239,  515 => 237,  504 => 235,  500 => 234,  497 => 233,  495 => 232,  486 => 231,  484 => 230,  479 => 228,  476 => 227,  459 => 226,  455 => 224,  452 => 223,  450 => 222,  432 => 206,  425 => 202,  421 => 201,  417 => 199,  415 => 198,  412 => 197,  406 => 195,  401 => 193,  398 => 192,  396 => 191,  391 => 188,  379 => 186,  375 => 185,  370 => 184,  366 => 183,  362 => 181,  356 => 178,  353 => 177,  351 => 176,  346 => 174,  341 => 171,  339 => 167,  336 => 166,  322 => 165,  315 => 160,  313 => 159,  305 => 157,  302 => 156,  300 => 155,  298 => 154,  281 => 153,  276 => 150,  274 => 149,  267 => 145,  256 => 137,  251 => 134,  241 => 133,  197 => 98,  187 => 91,  115 => 21,  101 => 20,  93 => 19,  76 => 18,  72 => 16,  62 => 15,  51 => 11,  49 => 13,  36 => 11,);
  919.     }
  920.     public function getSourceContext()
  921.     {
  922.         return new Source("{#
  923. This file is part of EC-CUBE
  924. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  925. http://www.ec-cube.co.jp/
  926. For the full copyright and license information, please view the LICENSE
  927. file that was distributed with this source code.
  928. #}
  929. {% extends 'default_frame.twig' %}
  930. {% set body_class = 'product_page' %}
  931. {% block javascript %}
  932.     <script>
  933.         eccube.productsClassCategories = {
  934.             {% for Product in pagination %}
  935.             \"{{ Product.id|escape('js') }}\": {{ class_categories_as_json(Product)|raw }}{% if loop.last == false %}, {% endif %}
  936.             {% endfor %}
  937.         };
  938.         \$(function() {
  939.             // 表示件数を変更
  940.             \$('.disp-number').change(function() {
  941.                 var dispNumber = \$(this).val();
  942.                 \$('#disp_number').val(dispNumber);
  943.                 \$('#pageno').val(1);
  944.                 \$(\"#form1\").submit();
  945.             });
  946.             // 並び順を変更
  947.             \$('.order-by').change(function() {
  948.                 var orderBy = \$(this).val();
  949.                 \$('#orderby').val(orderBy);
  950.                 \$('#pageno').val(1);
  951.                 \$(\"#form1\").submit();
  952.             });
  953.             var modalTimer;
  954.             \$('.add-cart').on('click', function(e) {
  955.                 var self = \$(this);
  956.                 onAddCart(e, \$(this), 1, function() {
  957.                     var \$form = self.parents('li');
  958.                     \$form.find(\".ec-productRole__btn--only\").addClass(\"d-none\");
  959.                     \$form.find(\".ec-productRole__btn--group\").removeClass(\"d-none\");
  960.                     window.clearTimeout(modalTimer);
  961.                     \$('.ec-modal').show()
  962.                     modalTimer = window.setTimeout(function() {
  963.                         \$('.ec-modal').hide();
  964.                     }, 1500)
  965.                 });
  966.             });
  967.             \$('.minus__btn').on('click', function(e) {
  968.                 onAddCart(e, \$(this), -1);
  969.             })
  970.             \$('.plus__btn').on('click', function(e) {
  971.                 onAddCart(e, \$(this));
  972.             })
  973.             function onAddCart(e, self, quantity = 1, callback) {
  974.                 var \$form = \$(self).parents('li').find('form.productForm');
  975.                 // 個数フォームのチェック
  976.                 \$form.parent().find('.quantity').val(quantity);
  977.                 e.preventDefault();
  978.                 \$.ajax({
  979.                     url: \$form.attr('action'),
  980.                     type: \$form.attr('method'),
  981.                     data: \$form.serialize(),
  982.                     dataType: 'json',
  983.                     beforeSend: function(xhr, settings) {
  984.                         // Buttonを無効にする
  985.                         \$(self).prop('disabled', true);
  986.                     }
  987.                 }).done(function(data) {
  988.                     // レスポンス内のメッセージをalertで表示
  989.                     \$.each(data.messages, function() {
  990.                         \$('#ec-modal-header').text(this);
  991.                     });
  992.                     var \$quantityLabelEl = \$(self).parents('li').find('.quantity_label');
  993.                     \$quantityLabelEl.text(\$quantityLabelEl.text() * 1 + quantity * 1);
  994.                     if(callback) {
  995.                         callback();
  996.                     }
  997.                     // カートブロックを更新する
  998.                     \$.ajax({
  999.                         url: '{{ url('block_cart') }}',
  1000.                         type: 'GET',
  1001.                         dataType: 'html'
  1002.                     }).done(function(html) {
  1003.                         \$('.ec-headerRole__cart').html(html);
  1004.                     });
  1005.                 }).fail(function(data) {
  1006.                     alert('{{ 'カートへの追加に失敗しました。'|trans }}');
  1007.                     \$(self).prop('disabled', false);
  1008.                 }).always(function(data) {
  1009.                     var \$parent = \$(self).parents('li');
  1010.                     let stockVal = \$parent.find('.stock').val() * 1;
  1011.                     var \$quantityLabelEl = \$parent.find('.quantity_label');
  1012.                     var _quantity = \$quantityLabelEl.text() * 1;
  1013.                     if(_quantity == 0) {
  1014.                         // enable minus button
  1015.                         \$(self).prop('disabled', false);
  1016.                         \$parent.find(\".ec-productRole__btn--only\").removeClass(\"d-none\");
  1017.                         \$parent.find(\".ec-productRole__btn--group\").addClass(\"d-none\");
  1018.                     }
  1019.                     if(_quantity > 0 && _quantity < stockVal) {
  1020.                         // Buttonを有効にする
  1021.                         \$(self).prop('disabled', false);
  1022.                         \$parent.find('.plus__btn').prop('disabled', false);
  1023.                     }
  1024.                 });
  1025.             }
  1026.         });
  1027.         \$('.ec-modal-wrap').on('click', function(e) {
  1028.             // モーダル内の処理は外側にバブリングさせない
  1029.             e.stopPropagation();
  1030.         });
  1031.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  1032.             \$('.ec-modal').hide()
  1033.         });
  1034.     </script>
  1035. {% endblock %}
  1036. {% block main %}
  1037.     <div class=\"ec-searchnavRole__topicpath\">
  1038.         <ul class=\"breadcrumb w-p\">
  1039.             <li class=\"breadcrumb__item\">
  1040.                 <a href=\"{{ url('product_list') }}\" class=\"breadcrumb__item__link\">
  1041.                     ホーム
  1042.                 </a>
  1043.             </li>
  1044.             <li class=\"breadcrumb__item\">
  1045.                 <p class=\"breadcrumb__item__arrow\">></p>
  1046.             </li>
  1047.             <li class=\"breadcrumb__item\">
  1048.                 <a href=\"{{ url('product_list') }}\" class=\"breadcrumb__item__link\">
  1049.                     商品一覧
  1050.                 </a>
  1051.             </li>
  1052.             {% if Category is not null %}
  1053.                 <li class=\"breadcrumb__item\">
  1054.                     <p class=\"breadcrumb__item__arrow\">></p>
  1055.                 </li>
  1056.                 {% for Path in Category.path %}
  1057.                     {% if Path.id != constant('Customize\\\\Common\\\\Constant::MANUFACTURER_CATEGORY_ID')
  1058.                         and Path.id != constant('Customize\\\\Common\\\\Constant::DEFAULT_CATEGORY_ID') %}
  1059.                         <li class=\"breadcrumb__item\">
  1060.                             <a class=\"breadcrumb__item__link\" href=\"{{ url('product_list') }}?category_id={{ Path.id }}\">{{ Path.name }}</a>
  1061.                         </li>
  1062.                         {%- if loop.last == false %}
  1063.                             <li class=\"breadcrumb__item\">
  1064.                                 <p class=\"breadcrumb__item__arrow\">></p>
  1065.                             </li>
  1066.                         {% endif -%}
  1067.                     {% endif %}
  1068.                 {% endfor %}
  1069.             {% endif %}
  1070.             {# {% if search_form.vars.value and search_form.vars.value.name %}
  1071.                 <li class=\"ec-topicpath__divider\">|</li>
  1072.                 <li class=\"ec-topicpath__item\">{{ '「%name%」の検索結果'|trans({ '%name%': search_form.vars.value.name }) }}</li>
  1073.             {% endif %} #}
  1074.         </ul>
  1075.     </div>
  1076.     <div class=\"ec-pageHeader contentHeader\">
  1077.         <h1>{{ '商品一覧'|trans }}</h1>
  1078.     </div>
  1079.     {% if search_form.category_id.vars.errors|length > 0 %}
  1080.         <div class=\"ec-searchnavRole\">
  1081.             <p class=\"errormsg text-danger\">{{ 'ご指定のカテゴリは存在しません'|trans }}</p>
  1082.         </div>
  1083.     {% else %}
  1084.         <div class=\"ec-searchnavRole\">
  1085.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  1086.                 {% for item in search_form %}
  1087.                     <input type=\"hidden\" id=\"{{ item.vars.id }}\"
  1088.                            name=\"{{ item.vars.full_name }}\"
  1089.                            {% if item.vars.value is not empty %}value=\"{{ item.vars.value }}\" {% endif %}/>
  1090.                 {% endfor %}
  1091.             </form>
  1092.             <div class=\"ec-searchnavRole__infos\">
  1093.                 <div class=\"ec-searchnavRole__counter\">
  1094.                     {% if pagination.totalItemCount > 0 %}
  1095.                         <p class=\"ec-searchnavRole__counter__title\">検索結果</p>
  1096.                         {{ '<p class=\"ec-searchnavRole__counter__number\">%count%件</p>'|trans({ '%count%': pagination.totalItemCount })|raw }}
  1097.                     {% else %}
  1098.                         <span>{{ 'お探しの商品は見つかりませんでした'|trans }}</span>
  1099.                     {% endif %}
  1100.                 </div>
  1101.                 {% if pagination.totalItemCount > 0 %}
  1102.                     <div class=\"ec-searchnavRole__actions\">
  1103.                         <div class=\"ec-select\">
  1104.                             {{ form_widget(search_form.disp_number, {'id': '', 'attr': {'class': 'disp-number'}}) }}
  1105.                             {{ form_widget(search_form.orderby, {'id': '', 'attr': {'class': 'order-by'}}) }}
  1106.                         </div>
  1107.                     </div>
  1108.                 {% endif %}
  1109.             </div>
  1110.         </div>
  1111.         <ul class=\"stockList\">
  1112.             <li class=\"stockList__block\">
  1113.                 <p class=\"stockList__block__text\">在庫あり:</p>
  1114.                 <p class=\"stockList__block__mark\">◎</p>
  1115.             </li>
  1116.             <li class=\"stockList__block\">
  1117.                 <p class=\"stockList__block__text\">残りわずか:</p>
  1118.                 <p class=\"stockList__block__mark\">○</p>
  1119.             </li>
  1120.             <li class=\"stockList__block\">
  1121.                 <p class=\"stockList__block__text\">取り寄せ:</p>
  1122.                 <p class=\"stockList__block__mark\">■</p>
  1123.             </li>
  1124.         </ul>
  1125.         {% if pagination.totalItemCount > 0 %}
  1126.             {% if isShowProductImage %}
  1127.             <div class=\"ec-shelfRole\">
  1128.                 <ul class=\"ec-shelfGrid\">
  1129.                     {% for Product in pagination %}
  1130.                         <li class=\"ec-shelfGrid__item\">
  1131.                             <a href=\"{{ url('product_detail', {'id': Product.id}) }}\">
  1132.                                 <div class=\"ec-shelfGrid__item-image\">
  1133.                                     <img src=\"{{ asset(Product.main_list_image|no_image_product, 'save_image') | imagine_filter('resize', {
  1134.     \"thumbnail\": {\"size\": [250, 250] }}) }}\" alt=\"{{ Product.name }}\" {% if loop.index > 5 %} loading=\"lazy\"{% endif %}>
  1135.                                     {% if Product.Tags|length > 0  %}
  1136.                                     <ul class=\"ec-shelfGrid__item-tags\">
  1137.                                         {% for Tag in Product.Tags %}
  1138.                                             <li class=\"ec-shelfGrid__item-tags__tag tag_{{ Tag.id }}\">{{ Tag }}</li>
  1139.                                         {% endfor %}
  1140.                                     </ul>
  1141.                                     {% endif %}
  1142.                                 </div>
  1143.                                 <p class=\"ec-shelfGrid__item-name\">{{ Product.name }}</p>
  1144.                                 {% if is_granted('ROLE_USER') %}
  1145.                                 <div class=\"ec-shelfGrid__item-stock\">
  1146.                                     <div class=\"ec-shelfGrid__item-stock__block\">
  1147.                                         <p class=\"ec-shelfGrid__item-stock__block__title\">
  1148.                                             【発送目安】
  1149.                                         </p>
  1150.                                         <p class=\"ec-shelfGrid__item-stock__block__detail\">
  1151.                                             {% if Product.getDeliveryDuration %}
  1152.                                                 {{Product.getDeliveryDuration.name}}
  1153.                                             {% else %}
  1154.                                                 指定なし
  1155.                                             {% endif %}
  1156.                                         </p>
  1157.                                     </div>
  1158.                                     <div class=\"ec-shelfGrid__item-stock__block\">
  1159.                                         <p class=\"ec-shelfGrid__item-stock__block__title\">
  1160.                                             【在庫】
  1161.                                         </p>
  1162.                                         {# 在庫をマークで表示何個から何個か◎等はこれから確認 #}
  1163.                                         <p class=\"ec-shelfGrid__item-stock__block__detail\">
  1164.                                             {% if Product.getStockUnlimitedMin or Product.getStockMin >= 10 %}
  1165.                                                 ◎
  1166.                                             {% else %}
  1167.                                                 {% if Product.getStockMin >= 1 and Product.getStockMin <= 9 %}
  1168.                                                     ○
  1169.                                                 {% endif %}
  1170.                                                 {% if Product.getStockMin <= 0 %}
  1171.                                                     ■
  1172.                                                 {% endif %}
  1173.                                             {% endif %}
  1174.                                         </p>
  1175.                                     </div>
  1176.                                 </div>
  1177.                                 {# {% if not Product.getStockUnlimitedMin %}
  1178.                                     <p>
  1179.                                         発送可能{{Product.getStockMin}}個
  1180.                                     </p>
  1181.                                 {% endif %} #}
  1182.                                 {% if Product.description_list %}
  1183.                                     <p>{{ Product.description_list|raw|nl2br }}</p>
  1184.                                 {% endif %}
  1185.                                 <div class=\"ec-shelfGrid__item-flex\">
  1186.                                     <p class=\"price02-default ec-shelfGrid__item-price\">
  1187.                                         {% if Product.isInSale %}
  1188.                                             <span class=\"ec-shelfGrid__item-price__sale\">セール商品</span>
  1189.                                         {% endif %}
  1190.                                         {% if Product.hasProductClass %}
  1191.                                             {% if Product.getPrice02Min == Product.getPrice02Max %}
  1192.                                                 {{ Product.getPrice02IncTaxMin|price }}
  1193.                                             {% else %}
  1194.                                                 {{ Product.getPrice02IncTaxMin|price }} ~ {{ Product.getPrice02IncTaxMax|price }}
  1195.                                             {% endif %}
  1196.                                         {% else %}
  1197.                                             {{ Product.getPrice02IncTaxMin|price }}
  1198.                                         {% endif %}
  1199.                                     </p>
  1200.                                     <div class=\"ec-shelfGrid__item-flex__favorite\">
  1201.                                         <form class=\"ec-favoriteForm\" action=\"?\" method=\"?\">
  1202.                                             <div class=\"ec-productRole__btn\">
  1203.                                                 <button data-method=\"POST\" data-action=\"{{ url('product_add_favorite', {id:Product.id}) }}\" id=\"favorite\" class=\"{% if isFavorite[Product.id] is defined and isFavorite[Product.id] == true %} d-none {% endif %} ec-blockFavoriteBtn ec-blockBtn--cancel ec-shelfGrid__item-flex__favorite__btn\">
  1204.                                                     <img src=\"{{ asset('assets/img/favorite/before.svg') }}\" alt=\"お気に入り\" width=\"24\" height=\"24\" loading=\"lazy\">
  1205.                                                 </button>
  1206.                                                 <button data-method=\"DELETE\" data-action=\"{{ url('product_favorite_delete', {id:Product.id}) }}\" id=\"favorite\" class=\"{% if isFavorite[Product.id] is defined and isFavorite[Product.id] == false %} d-none {% endif %}ec-blockFavoriteBtnDisable ec-blockBtn--cancel ec-shelfGrid__item-flex__favorite__btn\">
  1207.                                                    <img src=\"{{ asset('assets/img/favorite/after.svg') }}\" alt=\"お気に入り\" width=\"24\" height=\"24\" loading=\"lazy\">
  1208.                                                 </button>
  1209.                                             </div>
  1210.                                         </form>
  1211.                                     </div>
  1212.                                 </div>
  1213.                                 {% endif %}
  1214.                             </a>
  1215.                             {% if is_granted('ROLE_USER') %}
  1216.                                 {% if not Product.getStockUnlimitedMin and Product.getStockMin <= 0 and Product.isStockDiscontinued %}
  1217.                                     <div class=\"ec-productRole__btn\">
  1218.                                         <button type=\"button\" class=\"ec-disabled__btn\" disabled=\"disabled\">
  1219.                                             {{ '在庫なし'|trans }}
  1220.                                         </button>
  1221.                                     </div>
  1222.                                 {% else %}
  1223.                                     {% set form = forms[Product.id] %}
  1224.                                     <form class=\"productForm\" name=\"form{{ Product.id }}\" id=\"productForm{{ Product.id }}\" action=\"{{ url('product_add_cart', {id:Product.id}) }}\" method=\"post\">
  1225.                                         <div class=\"ec-productRole__actions\">
  1226.                                             {% if form.classcategory_id1 is defined %}
  1227.                                                 <div class=\"ec-select\">
  1228.                                                     {{ form_widget(form.classcategory_id1) }}
  1229.                                                     {{ form_errors(form.classcategory_id1) }}
  1230.                                                 </div>
  1231.                                                 {% if form.classcategory_id2 is defined %}
  1232.                                                     <div class=\"ec-select\">
  1233.                                                         {{ form_widget(form.classcategory_id2) }}
  1234.                                                         {{ form_errors(form.classcategory_id2) }}
  1235.                                                     </div>
  1236.                                                 {% endif %}
  1237.                                             {% endif %}
  1238.                                                 <div class=\"ec-numberInput d-none\"><span>{{ '数量'|trans }}</span>
  1239.                                                     {{ form_widget(form.quantity, {'attr': {'class': 'quantity'}} ) }}
  1240.                                                     {{ form_errors(form.quantity) }}
  1241.                                                 </div>
  1242.                                         
  1243.                                         </div>
  1244.                                         {{ form_rest(form) }}
  1245.                                     </form>
  1246.                                     {% set default = 0 %}
  1247.                                     {% if itemInCart[Product.id] is defined %}
  1248.                                         {% set default = itemInCart[Product.id] %}
  1249.                                     {% endif %}
  1250.                                     {% set disabled = false %}
  1251.                                     {% if not Product.isStockDiscontinued %}
  1252.                                         <input type=\"hidden\" name=\"stock\" class=\"stock\" value=\"999999999999\">
  1253.                                     {% else %}
  1254.                                         {% if Product.getStockMin <= default %}
  1255.                                             {% set disabled = true %}
  1256.                                         {% endif %}
  1257.                                         <input type=\"hidden\" name=\"stock\" class=\"stock\" value=\"{{Product.getStockMin}}\">
  1258.                                     {% endif %}
  1259.                                     <div class=\"ec-productRole__btn--group ec-productRole__btn {% if itemInCart[Product.id] is defined %} d-block {% else %} d-none {% endif %}\">
  1260.                                         <div class=\"d-flex align-items-center ec-productRole__btn-wrapper\">
  1261.                                             <button class=\"minus__btn\" data-cartid=\"{{ Product.id }}\" form=\"productForm{{ Product.id }}\">
  1262.                                                 <span>−</span>
  1263.                                             </button>
  1264.                                             <span class=\"quantity_label\">{{ default }}</span>
  1265.                                             <button class=\"plus__btn\" data-cartid=\"{{ Product.id }}\" form=\"productForm{{ Product.id }}\" {% if disabled %}disabled{% endif %}>
  1266.                                                 <span>+</span>
  1267.                                             </button>
  1268.                                         </div>
  1269.                                     </div>
  1270.                                     <div class=\"ec-productRole__btn--only ec-productRole__btn {% if itemInCart[Product.id] is defined %} d-none {% else %} d-block {% endif %}\">
  1271.                                         <button type=\"submit\" class=\"ec-regular__btn add-cart\" data-cartid=\"{{ Product.id }}\" form=\"productForm{{ Product.id }}\">
  1272.                                             {{ 'カートに入れる'|trans }}
  1273.                                         </button>
  1274.                                     </div>
  1275.                                 {% endif %}
  1276.                             {% else %}
  1277.                                 <a href=\"{{ url('entry_contact') }}\" class=\"ec-blockProductBtn--action\">会員登録はこちら</a>
  1278.                             {% endif %}
  1279.                         </li>
  1280.                     {% endfor %}
  1281.                 </ul>
  1282.             </div>
  1283.             {% else %}
  1284.                 <div class=\"ec-shelfRole\">
  1285.                     {% include \"Block/product_table.twig\" with {'pagination': pagination, 'itemInCart': itemInCart, 'forms': forms} %}
  1286.                 </div>
  1287.             {% endif %}
  1288.             <div class=\"ec-modal\">
  1289.                 <div class=\"ec-modal-overlay\">
  1290.                     <div class=\"ec-modal-wrap\">
  1291.                         <div class=\"ec-modal-box\">
  1292.                             <div class=\"ec-role\">
  1293.                                 <div class=\"ec-modal-icon\">
  1294.                                     <img src=\"{{ asset('assets/img/icon/icon_cart.png', 'user_data') }}\" alt=\"\">
  1295.                                 </div>
  1296.                             </div>
  1297.                         </div>
  1298.                         <div id=\"ec-modal-header\" class=\"text-center\">{{ 'カートに追加しました。'|trans }}</div>
  1299.                     </div>
  1300.                 </div>
  1301.             </div>
  1302.             <ul class=\"stockList bottom\">
  1303.                 <li class=\"stockList__block\">
  1304.                     <p class=\"stockList__block__text\">在庫あり:</p>
  1305.                     <p class=\"stockList__block__mark\">◎</p>
  1306.                 </li>
  1307.                 <li class=\"stockList__block\">
  1308.                     <p class=\"stockList__block__text\">残りわずか:</p>
  1309.                     <p class=\"stockList__block__mark\">○</p>
  1310.                 </li>
  1311.                 <li class=\"stockList__block\">
  1312.                     <p class=\"stockList__block__text\">取り寄せ:</p>
  1313.                     <p class=\"stockList__block__mark\">■</p>
  1314.                 </li>
  1315.             </ul>
  1316.             <div class=\"ec-pagerRole\">
  1317.                 {% include \"pager.twig\" with {'pages': pagination.paginationData} %}
  1318.             </div>
  1319.         {% endif %}
  1320.     {% endif %}
  1321. {% endblock %}
  1322. ""Product/list.twig""/home/bravers/bravers.xbiz.jp/public_html/app/template/bravers/Product/list.twig");
  1323.     }
  1324. }