var/cache/dev/twig/e4/e4173019fc3046250feb22f07b7a49dd.php line 360

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. /* __string_template__97532e188982444e0cb39c0d0b476ce4 */
  14. class __TwigTemplate_eec2c8057c7e953e7b5a0aebd49d00c4 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.             'stylesheet' => [$this'block_stylesheet'],
  24.             'javascript' => [$this'block_javascript'],
  25.             'main' => [$this'block_main'],
  26.         ];
  27.     }
  28.     protected function doGetParent(array $context)
  29.     {
  30.         // line 11
  31.         return "default_frame.twig";
  32.     }
  33.     protected function doDisplay(array $context, array $blocks = [])
  34.     {
  35.         $macros $this->macros;
  36.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  37.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""__string_template__97532e188982444e0cb39c0d0b476ce4"));
  38.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  39.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""__string_template__97532e188982444e0cb39c0d0b476ce4"));
  40.         // line 13
  41.         $context["body_class"] = "product_page";
  42.         // line 11
  43.         $this->parent $this->loadTemplate("default_frame.twig""__string_template__97532e188982444e0cb39c0d0b476ce4"11);
  44.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  45.         
  46.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  47.         
  48.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  49.     }
  50.     // line 15
  51.     public function block_stylesheet($context, array $blocks = [])
  52.     {
  53.         $macros $this->macros;
  54.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  55.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""stylesheet"));
  56.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  57.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""stylesheet"));
  58.         
  59.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  60.         
  61.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  62.     }
  63.     // line 18
  64.     public function block_javascript($context, array $blocks = [])
  65.     {
  66.         $macros $this->macros;
  67.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  68.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  69.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  70.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  71.         // line 19
  72.         echo "
  73. <script>
  74.     eccube.classCategories = ";
  75.         // line 21
  76.         echo $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getClassCategoriesAsJson((isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'21$this->source); })()));
  77.         echo ";
  78.     // 規格2に選択肢を割り当てる。
  79.     function fnSetClassCategories(form, classcat_id2_selected) {
  80.         var \$form = \$(form);
  81.         var product_id = \$form.find('input[name=product_id]').val();
  82.         var \$sele1 = \$form.find('select[name=classcategory_id1]');
  83.         var \$sele2 = \$form.find('select[name=classcategory_id2]');
  84.         eccube.setClassCategories(\$form, product_id, \$sele1, \$sele2, classcat_id2_selected);
  85.     }
  86.     ";
  87.         // line 31
  88.         if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id2", [], "any"truetruefalse31)) {
  89.             // line 32
  90.             echo "    fnSetClassCategories(
  91.         \$('#form1'), ";
  92.             // line 33
  93.             echo json_encode(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_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.'33$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse33), "vars", [], "any"falsefalsefalse33), "value", [], "any"falsefalsefalse33));
  94.             echo "
  95.     );
  96.     ";
  97.         } elseif (twig_get_attribute($this->env$this->source,         // line 35
  98. ($context["form"] ?? null), "classcategory_id1", [], "any"truetruefalse35)) {
  99.             // line 36
  100.             echo "    eccube.checkStock(\$('#form1'), ";
  101.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'36$this->source); })()), "id", [], "any"falsefalsefalse36), "html"nulltrue);
  102.             echo ", ";
  103.             echo json_encode(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_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.'36$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse36), "vars", [], "any"falsefalsefalse36), "value", [], "any"falsefalsefalse36));
  104.             echo ", null);
  105.     ";
  106.         }
  107.         // line 38
  108.         echo "</script>
  109. <script>
  110.     \$('.carousel').slick({
  111.         infinite: false,
  112.         speed: 300,
  113.         prevArrow:'<button type=\"button\" class=\"slick-prev\"><span class=\"angle-circle\"><svg class=\"cb cb-angle-right\"><use xlink:href=\"#cb-angle-right\" /></svg></span></button>',
  114.         nextArrow:'<button type=\"button\" class=\"slick-next\"><span class=\"angle-circle\"><svg class=\"cb cb-angle-right\"><use xlink:href=\"#cb-angle-right\" /></svg></span></button>',
  115.         slidesToShow: 4,
  116.         slidesToScroll: 4,
  117.         responsive: [
  118.             {
  119.                 breakpoint: 768,
  120.                 settings: {
  121.                     slidesToShow: 3,
  122.                     slidesToScroll: 3
  123.                 }
  124.             }
  125.         ]
  126.     });
  127.     \$('.slides').slick({
  128.         dots: true,
  129.         arrows: false,
  130.         speed: 300,
  131.         customPaging: function(slider, i) {
  132.             return '<button class=\"thumbnail\">' + \$(slider.\$slides[i]).find('img').prop('outerHTML') + '</button>';
  133.         }
  134.     });
  135.     \$('#favorite').click(function() {
  136.         \$('#mode').val('add_favorite');
  137.     });
  138.     \$('#add-cart').click(function() {
  139.         \$('#mode').val('add_cart');
  140.     });
  141.     // bfcache無効化
  142.     \$(window).bind('pageshow', function(event) {
  143.         if (event.originalEvent.persisted) {
  144.             location.reload(true);
  145.         }
  146.     });
  147. </script>
  148. ";
  149.         
  150.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  151.         
  152.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  153.     }
  154.     // line 83
  155.     public function block_main($context, array $blocks = [])
  156.     {
  157.         $macros $this->macros;
  158.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  159.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  160.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  161.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  162.         // line 84
  163.         echo "
  164. <!-- ▼item_detail▼ -->
  165. <div id=\"item_detail\">
  166.     <div id=\"detail_wrap\" class=\"row\">
  167.         <!--★画像★-->
  168.         <div id=\"item_photo_area\" class=\"col-sm-6\">
  169.             <div id=\"detail_image_box__slides\" class=\"slides\">
  170.                 ";
  171.         // line 91
  172.         $context['_parent'] = $context;
  173.         $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'91$this->source); })()), "ProductImage", [], "any"falsefalsefalse91));
  174.         $context['_iterated'] = false;
  175.         $context['loop'] = [
  176.           'parent' => $context['_parent'],
  177.           'index0' => 0,
  178.           'index'  => 1,
  179.           'first'  => true,
  180.         ];
  181.         if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  182.             $length count($context['_seq']);
  183.             $context['loop']['revindex0'] = $length 1;
  184.             $context['loop']['revindex'] = $length;
  185.             $context['loop']['length'] = $length;
  186.             $context['loop']['last'] = === $length;
  187.         }
  188.         foreach ($context['_seq'] as $context["_key"] => $context["ProductImage"]) {
  189.             // line 92
  190.             echo "                    <div id=\"detail_image_box__item--";
  191.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["loop"], "index", [], "any"falsefalsefalse92), "html"nulltrue);
  192.             echo "\">
  193.                         <img class=\"zoom\" src=\"";
  194.             // line 93
  195.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["ProductImage"], "save_image"), "html"nulltrue);
  196.             echo "\" data-zoom-image=\"";
  197.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["ProductImage"], "save_image"), "html"nulltrue);
  198.             echo "\"/>
  199.                     </div>
  200.                 ";
  201.             $context['_iterated'] = true;
  202.             ++$context['loop']['index0'];
  203.             ++$context['loop']['index'];
  204.             $context['loop']['first'] = false;
  205.             if (isset($context['loop']['length'])) {
  206.                 --$context['loop']['revindex0'];
  207.                 --$context['loop']['revindex'];
  208.                 $context['loop']['last'] = === $context['loop']['revindex0'];
  209.             }
  210.         }
  211.         if (!$context['_iterated']) {
  212.             // line 96
  213.             echo "                    <div id=\"detail_image_box__item\">
  214.                         <img class=\"zoom\" src=\"";
  215.             // line 97
  216.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(""), "save_image"), "html"nulltrue);
  217.             echo "\" data-zoom-image=\"";
  218.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(""), "save_image"), "html"nulltrue);
  219.             echo "\"/>
  220.                     </div>
  221.                 ";
  222.         }
  223.         $_parent $context['_parent'];
  224.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductImage'], $context['_parent'], $context['loop']);
  225.         $context array_intersect_key($context$_parent) + $_parent;
  226.         // line 100
  227.         echo "            </div>
  228.         </div>
  229.         <section id=\"item_detail_area\" class=\"col-sm-6\">
  230.             <!--★商品名★-->
  231.             <h3 id=\"detail_description_box__name\" class=\"item_name\">";
  232.         // line 105
  233.         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'105$this->source); })()), "name", [], "any"falsefalsefalse105), "html"nulltrue);
  234.         echo "</h3>
  235.             <!-- ▼関連カテゴリ▼ -->
  236.             <div id=\"relative_category_box\" class=\"relative_cat\">
  237.                 <!--<p>関連カテゴリ</p>-->
  238.                 ";
  239.         // line 110
  240.         $context['_parent'] = $context;
  241.         $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'110$this->source); })()), "ProductCategories", [], "any"falsefalsefalse110));
  242.         $context['loop'] = [
  243.           'parent' => $context['_parent'],
  244.           'index0' => 0,
  245.           'index'  => 1,
  246.           'first'  => true,
  247.         ];
  248.         if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  249.             $length count($context['_seq']);
  250.             $context['loop']['revindex0'] = $length 1;
  251.             $context['loop']['revindex'] = $length;
  252.             $context['loop']['length'] = $length;
  253.             $context['loop']['last'] = === $length;
  254.         }
  255.         foreach ($context['_seq'] as $context["_key"] => $context["ProductCategory"]) {
  256.             // line 111
  257.             echo "                    <ol id=\"relative_category_box__relative_category--";
  258.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["ProductCategory"], "product_id", [], "any"falsefalsefalse111), "html"nulltrue);
  259.             echo "_";
  260.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["loop"], "index", [], "any"falsefalsefalse111), "html"nulltrue);
  261.             echo "\">
  262.                         ";
  263.             // line 112
  264.             $context['_parent'] = $context;
  265.             $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["ProductCategory"], "Category", [], "any"falsefalsefalse112), "path", [], "any"falsefalsefalse112));
  266.             $context['loop'] = [
  267.               'parent' => $context['_parent'],
  268.               'index0' => 0,
  269.               'index'  => 1,
  270.               'first'  => true,
  271.             ];
  272.             if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  273.                 $length count($context['_seq']);
  274.                 $context['loop']['revindex0'] = $length 1;
  275.                 $context['loop']['revindex'] = $length;
  276.                 $context['loop']['length'] = $length;
  277.                 $context['loop']['last'] = === $length;
  278.             }
  279.             foreach ($context['_seq'] as $context["_key"] => $context["Category"]) {
  280.                 // line 113
  281.                 echo "                            <li><a id=\"relative_category_box__relative_category--";
  282.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["ProductCategory"], "product_id", [], "any"falsefalsefalse113), "html"nulltrue);
  283.                 echo "_";
  284.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["loop"], "parent", [], "any"falsefalsefalse113), "loop", [], "any"falsefalsefalse113), "index", [], "any"falsefalsefalse113), "html"nulltrue);
  285.                 echo "_";
  286.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Category"], "id", [], "any"falsefalsefalse113), "html"nulltrue);
  287.                 echo "\" href=\"";
  288.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  289.                 echo "?category_id=";
  290.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Category"], "id", [], "any"falsefalsefalse113), "html"nulltrue);
  291.                 echo "\" class=\"btn btn-info-border\">";
  292.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Category"], "name", [], "any"falsefalsefalse113), "html"nulltrue);
  293.                 echo "</a></li>
  294.                         ";
  295.                 ++$context['loop']['index0'];
  296.                 ++$context['loop']['index'];
  297.                 $context['loop']['first'] = false;
  298.                 if (isset($context['loop']['length'])) {
  299.                     --$context['loop']['revindex0'];
  300.                     --$context['loop']['revindex'];
  301.                     $context['loop']['last'] = === $context['loop']['revindex0'];
  302.                 }
  303.             }
  304.             $_parent $context['_parent'];
  305.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Category'], $context['_parent'], $context['loop']);
  306.             $context array_intersect_key($context$_parent) + $_parent;
  307.             // line 115
  308.             echo "                    </ol>
  309.                 ";
  310.             ++$context['loop']['index0'];
  311.             ++$context['loop']['index'];
  312.             $context['loop']['first'] = false;
  313.             if (isset($context['loop']['length'])) {
  314.                 --$context['loop']['revindex0'];
  315.                 --$context['loop']['revindex'];
  316.                 $context['loop']['last'] = === $context['loop']['revindex0'];
  317.             }
  318.         }
  319.         $_parent $context['_parent'];
  320.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductCategory'], $context['_parent'], $context['loop']);
  321.         $context array_intersect_key($context$_parent) + $_parent;
  322.         // line 117
  323.         echo "            </div>
  324.             <!-- ▲関連カテゴリ▲ -->
  325.             <div id=\"detail_description_box__body\" class=\"item_detail\">
  326.                 ";
  327.         // line 122
  328.         if ( !twig_test_empty(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'122$this->source); })()), "Tags", [], "any"falsefalsefalse122))) {
  329.             // line 123
  330.             echo "                    <!--▼商品タグ-->
  331.                     <div id=\"product_tag_box\" class=\"product_tag\">
  332.                         ";
  333.             // line 125
  334.             $context['_parent'] = $context;
  335.             $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'125$this->source); })()), "Tags", [], "any"falsefalsefalse125));
  336.             foreach ($context['_seq'] as $context["_key"] => $context["Tag"]) {
  337.                 // line 126
  338.                 echo "                            <span id=\"product_tag_box__product_tag--";
  339.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Tag"], "id", [], "any"falsefalsefalse126), "html"nulltrue);
  340.                 echo "\" class=\"product_tag_list\">";
  341.                 echo twig_escape_filter($this->env$context["Tag"], "html"nulltrue);
  342.                 echo "</span>
  343.                         ";
  344.             }
  345.             $_parent $context['_parent'];
  346.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Tag'], $context['_parent'], $context['loop']);
  347.             $context array_intersect_key($context$_parent) + $_parent;
  348.             // line 128
  349.             echo "                    </div>
  350.                     <hr>
  351.                     <!--▲商品タグ-->
  352.                 ";
  353.         }
  354.         // line 132
  355.         echo "
  356.                 <!--★通常価格★-->
  357.                 ";
  358.         // line 134
  359.         if (twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'134$this->source); })()), "hasProductClass", [], "any"falsefalsefalse134)) {
  360.             // line 135
  361.             if (( !(null === twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'135$this->source); })()), "getPrice01Min", [], "any"falsefalsefalse135)) && (twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'135$this->source); })()), "getPrice01IncTaxMin", [], "any"falsefalsefalse135) == twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'135$this->source); })()), "getPrice01IncTaxMax", [], "any"falsefalsefalse135)))) {
  362.                 // line 136
  363.                 echo "                        <p id=\"detail_description_box__class_normal_price\" class=\"normal_price\"> 通常価格:<span class=\"price01_default\">";
  364.                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'136$this->source); })()), "getPrice01IncTaxMin", [], "any"falsefalsefalse136)), "html"nulltrue);
  365.                 echo "</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  366.                     ";
  367.             } elseif (( !(null === twig_get_attribute($this->env$this->source,             // line 137
  368. (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'137$this->source); })()), "getPrice01Min", [], "any"falsefalsefalse137)) &&  !(null === twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'137$this->source); })()), "getPrice01Max", [], "any"falsefalsefalse137)))) {
  369.                 // line 138
  370.                 echo "                        <p id=\"detail_description_box__class_normal_range_price\" class=\"normal_price\"> 通常価格:<span class=\"price01_default\">";
  371.                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'138$this->source); })()), "getPrice01IncTaxMin", [], "any"falsefalsefalse138)), "html"nulltrue);
  372.                 echo "~ ";
  373.                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'138$this->source); })()), "getPrice01IncTaxMax", [], "any"falsefalsefalse138)), "html"nulltrue);
  374.                 echo "</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  375.                     ";
  376.             }
  377.             // line 140
  378.             echo "                ";
  379.         } else {
  380.             // line 141
  381.             if (( !(null === twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'141$this->source); })()), "getPrice01Max", [], "any"falsefalsefalse141)) && (twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'141$this->source); })()), "getPrice01Max", [], "any"falsefalsefalse141) > 0))) {
  382.                 // line 142
  383.                 echo "                        <span class=\"tax_management-list_price\"></span>
  384.                             ";
  385.                 // line 146
  386.                 echo "                    ";
  387.             }
  388.             // line 147
  389.             echo "                ";
  390.         }
  391.         // line 149
  392.         echo "<!--★販売価格★-->
  393.                 ";
  394.         // line 150
  395.         $context["flag"] = false;
  396.         // line 151
  397.         echo "
  398.                 ";
  399.         // line 152
  400.         if ( !twig_test_empty(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'152$this->source); })()), "ProductCategories", [], "any"falsefalsefalse152))) {
  401.             // line 153
  402.             echo "                    ";
  403.             $context['_parent'] = $context;
  404.             $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'153$this->source); })()), "ProductCategories", [], "any"falsefalsefalse153));
  405.             foreach ($context['_seq'] as $context["_key"] => $context["category"]) {
  406.                 // line 154
  407.                 echo "                        ";
  408.                 if (((((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["category"], "Category", [], "any"falsefalsefalse154), "id", [], "any"falsefalsefalse154) == 148) || (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["category"], "Category", [], "any"falsefalsefalse154), "id", [], "any"falsefalsefalse154) == 133)) || (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["category"], "Category", [], "any"falsefalsefalse154), "id", [], "any"falsefalsefalse154) == 144)) || (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["category"], "Category", [], "any"falsefalsefalse154), "id", [], "any"falsefalsefalse154) == 116))) {
  409.                     // line 155
  410.                     echo "                            ";
  411.                     $context["flag"] = true;
  412.                     // line 156
  413.                     echo "                        ";
  414.                 }
  415.                 // line 157
  416.                 echo "                    ";
  417.             }
  418.             $_parent $context['_parent'];
  419.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['category'], $context['_parent'], $context['loop']);
  420.             $context array_intersect_key($context$_parent) + $_parent;
  421.             // line 158
  422.             echo "                ";
  423.         }
  424.         // line 159
  425.         echo "
  426.                 ";
  427.         // line 160
  428.         if ((((isset($context["flag"]) || array_key_exists("flag"$context) ? $context["flag"] : (function () { throw new RuntimeError('Variable "flag" does not exist.'160$this->source); })()) != true) && (isset($context["discount_flag"]) || array_key_exists("discount_flag"$context) ? $context["discount_flag"] : (function () { throw new RuntimeError('Variable "discount_flag" does not exist.'160$this->source); })()))) {
  429.             // line 161
  430.             echo "                    ";
  431.             if ($this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_USER")) {
  432.                 // line 162
  433.                 echo "                        <span style=\"color:red;\">[";
  434.                 echo twig_escape_filter($this->env, (isset($context["discount_ratio"]) || array_key_exists("discount_ratio"$context) ? $context["discount_ratio"] : (function () { throw new RuntimeError('Variable "discount_ratio" does not exist.'162$this->source); })()), "html"nulltrue);
  435.                 echo "%割引対象商品です]</span>
  436.                     ";
  437.             } elseif (            // line 163
  438. (isset($context["nonmember_flag"]) || array_key_exists("nonmember_flag"$context) ? $context["nonmember_flag"] : (function () { throw new RuntimeError('Variable "nonmember_flag" does not exist.'163$this->source); })())) {
  439.                 // line 164
  440.                 echo "                        <span style=\"color:red;\">[";
  441.                 echo twig_escape_filter($this->env, (isset($context["nonmember_ratio"]) || array_key_exists("nonmember_ratio"$context) ? $context["nonmember_ratio"] : (function () { throw new RuntimeError('Variable "nonmember_ratio" does not exist.'164$this->source); })()), "html"nulltrue);
  442.                 echo "%割引対象商品です]</span>
  443.                     ";
  444.             }
  445.             // line 166
  446.             echo "                ";
  447.         }
  448.         // line 167
  449.         echo "                ";
  450.         // line 178
  451.         echo "
  452.                 ";
  453.         // line 179
  454.         if (twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'179$this->source); })()), "hasProductClass", [], "any"falsefalsefalse179)) {
  455.             // line 180
  456.             if ((twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'180$this->source); })()), "getPrice02IncTaxMin", [], "any"falsefalsefalse180) == twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'180$this->source); })()), "getPrice02IncTaxMax", [], "any"falsefalsefalse180))) {
  457.                 // line 181
  458.                 echo "                        <p id=\"detail_description_box__class_sale_price\" class=\"sale_price text-primary\"> <span class=\"price02_default\">";
  459.                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'181$this->source); })()), "getPrice02IncTaxMin", [], "any"falsefalsefalse181)), "html"nulltrue);
  460.                 echo "</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  461.                     ";
  462.             } else {
  463.                 // line 183
  464.                 echo "                        <p id=\"detail_description_box__class_range_sale_price\" class=\"sale_price text-primary\"> <span class=\"price02_default\">";
  465.                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'183$this->source); })()), "getPrice02IncTaxMin", [], "any"falsefalsefalse183)), "html"nulltrue);
  466.                 echo " ~ ";
  467.                 echo twig_escape_filter($this->env$this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'183$this->source); })()), "getPrice02IncTaxMax", [], "any"falsefalsefalse183)), "html"nulltrue);
  468.                 echo "</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  469.                     ";
  470.             }
  471.             // line 185
  472.             echo "                ";
  473.         } else {
  474.             // line 186
  475.             echo "<span class=\"tax_management-sale_price\"></span>
  476.                     <small>
  477.                         ";
  478.             // line 188
  479.             if ((twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'188$this->source); })()), "stock_min", [], "any"falsefalsefalse188) >= 5)) {
  480.                 // line 189
  481.                 echo "                            在庫あり
  482.                         ";
  483.             } elseif ((twig_get_attribute($this->env$this->source,             // line 190
  484. (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'190$this->source); })()), "stock_min", [], "any"falsefalsefalse190) == null)) {
  485.                 // line 191
  486.                 echo "                            在庫あり
  487.                         ";
  488.             } else {
  489.                 // line 193
  490.                 echo "                            在庫:";
  491.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'193$this->source); })()), "stock_min", [], "any"falsefalsefalse193), "html"nulltrue);
  492.                 echo "
  493.                         ";
  494.             }
  495.             // line 195
  496.             echo "                    </small>
  497.                     ";
  498.             // line 199
  499.             echo "                ";
  500.         }
  501.         // line 202
  502.         echo "                ";
  503.         $context["hasHandlingTag"] = false;
  504.         // line 203
  505.         echo "                ";
  506.         $context['_parent'] = $context;
  507.         $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'203$this->source); })()), "Tags", [], "any"falsefalsefalse203));
  508.         foreach ($context['_seq'] as $context["_key"] => $context["tag"]) {
  509.             // line 204
  510.             echo "                    ";
  511.             if ((twig_get_attribute($this->env$this->source$context["tag"], "id", [], "any"falsefalsefalse204) == 7)) {
  512.                 // line 205
  513.                 echo "                        ";
  514.                 $context["hasHandlingTag"] = true;
  515.                 // line 206
  516.                 echo "                    ";
  517.             }
  518.             // line 207
  519.             echo "                ";
  520.         }
  521.         $_parent $context['_parent'];
  522.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['tag'], $context['_parent'], $context['loop']);
  523.         $context array_intersect_key($context$_parent) + $_parent;
  524.         // line 208
  525.         echo "
  526.                 ";
  527.         // line 209
  528.         if (((isset($context["hasHandlingTag"]) || array_key_exists("hasHandlingTag"$context) ? $context["hasHandlingTag"] : (function () { throw new RuntimeError('Variable "hasHandlingTag" does not exist.'209$this->source); })()) &&  !twig_test_empty(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'209$this->source); })()), "tag7DisplayText", [], "any"falsefalsefalse209)))) {
  529.             // line 210
  530.             echo "                    <div class=\"handling-product-notice mt-3 p-3 border rounded bg-light\">
  531.                         <p class=\"mb-0\">";
  532.             // line 211
  533.             echo twig_nl2br(twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'211$this->source); })()), "tag7DisplayText", [], "any"falsefalsefalse211), "html"nulltrue));
  534.             echo "</p>
  535.                     </div>
  536.                 ";
  537.         }
  538.         // line 214
  539.         echo "
  540.                 <div id=\"detail_cart_box\" class=\"cart_area\">
  541.                     ";
  542.         // line 217
  543.         echo twig_include($this->env$context"Product/sales_restrictions_cart.twig");
  544.         echo "
  545.                     <form action=\"";
  546.         // line 218
  547.         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, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'218$this->source); })()), "id", [], "any"falsefalsefalse218)]), "html"nulltrue);
  548.         echo "\" method=\"post\">
  549.                         <div class=\"btn_area\">
  550.                             ";
  551.         // line 221
  552.         echo "                            ";
  553.         if (twig_get_attribute($this->env$this->source, (isset($context["BaseInfo"]) || array_key_exists("BaseInfo"$context) ? $context["BaseInfo"] : (function () { throw new RuntimeError('Variable "BaseInfo" does not exist.'221$this->source); })()), "option_favorite_product", [], "any"falsefalsefalse221)) {
  554.             // line 222
  555.             echo "                                <ul id=\"detail_cart_box__favorite_button\" class=\"row\">
  556.                                     ";
  557.             // line 223
  558.             if (((isset($context["is_favorite"]) || array_key_exists("is_favorite"$context) ? $context["is_favorite"] : (function () { throw new RuntimeError('Variable "is_favorite" does not exist.'223$this->source); })()) == false)) {
  559.                 // line 224
  560.                 echo "                                        <li class=\"col-xs-12 col-sm-8\"><button type=\"submit\" id=\"favorite\" class=\"btn btn-info-border btn-block prevention-btn prevention-mask\"><svg class=\"cb cb-heart-circle\"><use xlink:href=\"#cb-heart-circle\"></use></svg>お気に入りに追加</button></li>
  561.                                     ";
  562.             } else {
  563.                 // line 226
  564.                 echo "                                        <li class=\"col-xs-12 col-sm-8\"><button type=\"submit\" id=\"favorite\" class=\"btn btn-info-border btn-block\" disabled=\"disabled\"><svg class=\"cb cb-heart-circle\"><use xlink:href=\"#cb-heart-circle\"></use></svg>お気に入りに追加済みです</button></li>
  565.                                     ";
  566.             }
  567.             // line 228
  568.             echo "                                </ul>
  569.                             ";
  570.         }
  571.         // line 230
  572.         echo "                        </div>
  573.                     </form>
  574.                 </div>
  575.                 <!--▲買い物かご-->
  576.                 <!--★商品説明★-->
  577.                 <p id=\"detail_not_stock_box__description_detail\" class=\"item_comment ec-productRole__tags\">";
  578.         // line 236
  579.         echo twig_nl2br(twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'236$this->source); })()), "description_detail", [], "any"falsefalsefalse236));
  580.         echo "</p>
  581.                 <!--▼商品コード-->
  582.                 <p id=\"detail_description_box__item_range_code\" class=\"item_code\" style=\"padding-bottom:0;\">商品コード: <span id=\"item_code_default\">
  583.                         ";
  584.         // line 240
  585.         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'240$this->source); })()), "code_min", [], "any"falsefalsefalse240), "html"nulltrue);
  586.         echo "
  587.                         ";
  588.         // line 241
  589.         if ((twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'241$this->source); })()), "code_min", [], "any"falsefalsefalse241) != twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'241$this->source); })()), "code_max", [], "any"falsefalsefalse241))) {
  590.             echo " ~ ";
  591.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'241$this->source); })()), "code_max", [], "any"falsefalsefalse241), "html"nulltrue);
  592.         }
  593.         // line 242
  594.         echo "                        </span> </p>
  595.                 <!--▲商品コード-->
  596.                 <!--▼重さ・サイズ係数-->
  597.                 <div id=\"product_weight_size\" class=\"product_weight_size\">
  598.                     <!-- product_weight_size -->
  599.                     ";
  600.         // line 248
  601.         echo twig_include($this->env$context"Product/weight_size.twig");
  602.         echo "
  603.                 </div>
  604.                 <!--▲重さ・サイズ係数▲-->
  605.             </div>
  606.             <!-- /.item_detail -->
  607.         </section>
  608.         <!--詳細ここまで-->
  609.     </div>
  610.     ";
  611.         // line 260
  612.         echo "    ";
  613.         if (twig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'260$this->source); })()), "freearea", [], "any"falsefalsefalse260)) {
  614.             // line 261
  615.             echo "        <div id=\"sub_area\" class=\"row\">
  616.             <div class=\"col-sm-10 col-sm-offset-1\">
  617.                 <div id=\"detail_free_box__freearea\" class=\"freearea\">";
  618.             // line 263
  619.             echo twig_include($this->env$contexttwig_template_from_string($this->envtwig_get_attribute($this->env$this->source, (isset($context["Product"]) || array_key_exists("Product"$context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.'263$this->source); })()), "freearea", [], "any"falsefalsefalse263)));
  620.             echo "</div>
  621.             </div>
  622.         </div>
  623.     ";
  624.         }
  625.         // line 267
  626.         echo "</div>
  627.     <!-- ▲item_detail▲ -->
  628. ";
  629.         
  630.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  631.         
  632.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  633.     }
  634.     public function getTemplateName()
  635.     {
  636.         return "__string_template__97532e188982444e0cb39c0d0b476ce4";
  637.     }
  638.     public function isTraitable()
  639.     {
  640.         return false;
  641.     }
  642.     public function getDebugInfo()
  643.     {
  644.         return array (  665 => 267,  658 => 263,  654 => 261,  651 => 260,  637 => 248,  629 => 242,  624 => 241,  620 => 240,  613 => 236,  605 => 230,  601 => 228,  597 => 226,  593 => 224,  591 => 223,  588 => 222,  585 => 221,  580 => 218,  576 => 217,  571 => 214,  565 => 211,  562 => 210,  560 => 209,  557 => 208,  551 => 207,  548 => 206,  545 => 205,  542 => 204,  537 => 203,  534 => 202,  531 => 199,  528 => 195,  522 => 193,  518 => 191,  516 => 190,  513 => 189,  511 => 188,  507 => 186,  504 => 185,  496 => 183,  490 => 181,  488 => 180,  486 => 179,  483 => 178,  481 => 167,  478 => 166,  472 => 164,  470 => 163,  465 => 162,  462 => 161,  460 => 160,  457 => 159,  454 => 158,  448 => 157,  445 => 156,  442 => 155,  439 => 154,  434 => 153,  432 => 152,  429 => 151,  427 => 150,  424 => 149,  421 => 147,  418 => 146,  415 => 142,  413 => 141,  410 => 140,  402 => 138,  400 => 137,  395 => 136,  393 => 135,  391 => 134,  387 => 132,  381 => 128,  370 => 126,  366 => 125,  362 => 123,  360 => 122,  353 => 117,  338 => 115,  311 => 113,  294 => 112,  287 => 111,  270 => 110,  262 => 105,  255 => 100,  244 => 97,  241 => 96,  223 => 93,  218 => 92,  200 => 91,  191 => 84,  181 => 83,  128 => 38,  120 => 36,  118 => 35,  113 => 33,  110 => 32,  108 => 31,  95 => 21,  91 => 19,  81 => 18,  63 => 15,  52 => 11,  50 => 13,  37 => 11,);
  645.     }
  646.     public function getSourceContext()
  647.     {
  648.         return new Source("{#
  649. This file is part of EC-CUBE
  650. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  651. http://www.ec-cube.co.jp/
  652. For the full copyright and license information, please view the LICENSE
  653. file that was distributed with this source code.
  654. #}
  655. {% extends 'default_frame.twig' %}
  656. {% set body_class = 'product_page' %}
  657. {% block stylesheet %}
  658. {% endblock %}
  659. {% block javascript %}
  660. <script>
  661.     eccube.classCategories = {{ class_categories_as_json(Product)|raw }};
  662.     // 規格2に選択肢を割り当てる。
  663.     function fnSetClassCategories(form, classcat_id2_selected) {
  664.         var \$form = \$(form);
  665.         var product_id = \$form.find('input[name=product_id]').val();
  666.         var \$sele1 = \$form.find('select[name=classcategory_id1]');
  667.         var \$sele2 = \$form.find('select[name=classcategory_id2]');
  668.         eccube.setClassCategories(\$form, product_id, \$sele1, \$sele2, classcat_id2_selected);
  669.     }
  670.     {% if form.classcategory_id2 is defined %}
  671.     fnSetClassCategories(
  672.         \$('#form1'), {{ form.classcategory_id2.vars.value|json_encode|raw }}
  673.     );
  674.     {% elseif form.classcategory_id1 is defined %}
  675.     eccube.checkStock(\$('#form1'), {{ Product.id }}, {{ form.classcategory_id1.vars.value|json_encode|raw }}, null);
  676.     {% endif %}
  677. </script>
  678. <script>
  679.     \$('.carousel').slick({
  680.         infinite: false,
  681.         speed: 300,
  682.         prevArrow:'<button type=\"button\" class=\"slick-prev\"><span class=\"angle-circle\"><svg class=\"cb cb-angle-right\"><use xlink:href=\"#cb-angle-right\" /></svg></span></button>',
  683.         nextArrow:'<button type=\"button\" class=\"slick-next\"><span class=\"angle-circle\"><svg class=\"cb cb-angle-right\"><use xlink:href=\"#cb-angle-right\" /></svg></span></button>',
  684.         slidesToShow: 4,
  685.         slidesToScroll: 4,
  686.         responsive: [
  687.             {
  688.                 breakpoint: 768,
  689.                 settings: {
  690.                     slidesToShow: 3,
  691.                     slidesToScroll: 3
  692.                 }
  693.             }
  694.         ]
  695.     });
  696.     \$('.slides').slick({
  697.         dots: true,
  698.         arrows: false,
  699.         speed: 300,
  700.         customPaging: function(slider, i) {
  701.             return '<button class=\"thumbnail\">' + \$(slider.\$slides[i]).find('img').prop('outerHTML') + '</button>';
  702.         }
  703.     });
  704.     \$('#favorite').click(function() {
  705.         \$('#mode').val('add_favorite');
  706.     });
  707.     \$('#add-cart').click(function() {
  708.         \$('#mode').val('add_cart');
  709.     });
  710.     // bfcache無効化
  711.     \$(window).bind('pageshow', function(event) {
  712.         if (event.originalEvent.persisted) {
  713.             location.reload(true);
  714.         }
  715.     });
  716. </script>
  717. {% endblock %}
  718. {% block main %}
  719. <!-- ▼item_detail▼ -->
  720. <div id=\"item_detail\">
  721.     <div id=\"detail_wrap\" class=\"row\">
  722.         <!--★画像★-->
  723.         <div id=\"item_photo_area\" class=\"col-sm-6\">
  724.             <div id=\"detail_image_box__slides\" class=\"slides\">
  725.                 {% for ProductImage in Product.ProductImage %}
  726.                     <div id=\"detail_image_box__item--{{ loop.index }}\">
  727.                         <img class=\"zoom\" src=\"{{ asset(ProductImage, 'save_image') }}\" data-zoom-image=\"{{ asset(ProductImage, 'save_image') }}\"/>
  728.                     </div>
  729.                 {% else %}
  730.                     <div id=\"detail_image_box__item\">
  731.                         <img class=\"zoom\" src=\"{{ asset(''|no_image_product, 'save_image') }}\" data-zoom-image=\"{{ asset(''|no_image_product, 'save_image') }}\"/>
  732.                     </div>
  733.                 {% endfor %}
  734.             </div>
  735.         </div>
  736.         <section id=\"item_detail_area\" class=\"col-sm-6\">
  737.             <!--★商品名★-->
  738.             <h3 id=\"detail_description_box__name\" class=\"item_name\">{{ Product.name }}</h3>
  739.             <!-- ▼関連カテゴリ▼ -->
  740.             <div id=\"relative_category_box\" class=\"relative_cat\">
  741.                 <!--<p>関連カテゴリ</p>-->
  742.                 {% for ProductCategory in Product.ProductCategories %}
  743.                     <ol id=\"relative_category_box__relative_category--{{ ProductCategory.product_id }}_{{ loop.index }}\">
  744.                         {% for Category in ProductCategory.Category.path %}
  745.                             <li><a id=\"relative_category_box__relative_category--{{ ProductCategory.product_id }}_{{ loop.parent.loop.index }}_{{ Category.id }}\" href=\"{{ url('product_list') }}?category_id={{ Category.id }}\" class=\"btn btn-info-border\">{{ Category.name }}</a></li>
  746.                         {% endfor %}
  747.                     </ol>
  748.                 {% endfor %}
  749.             </div>
  750.             <!-- ▲関連カテゴリ▲ -->
  751.             <div id=\"detail_description_box__body\" class=\"item_detail\">
  752.                 {% if Product.Tags is not empty %}
  753.                     <!--▼商品タグ-->
  754.                     <div id=\"product_tag_box\" class=\"product_tag\">
  755.                         {% for Tag in Product.Tags %}
  756.                             <span id=\"product_tag_box__product_tag--{{ Tag.id }}\" class=\"product_tag_list\">{{ Tag }}</span>
  757.                         {% endfor %}
  758.                     </div>
  759.                     <hr>
  760.                     <!--▲商品タグ-->
  761.                 {% endif %}
  762.                 <!--★通常価格★-->
  763.                 {% if Product.hasProductClass -%}
  764.                     {% if Product.getPrice01Min is not null and Product.getPrice01IncTaxMin == Product.getPrice01IncTaxMax %}
  765.                         <p id=\"detail_description_box__class_normal_price\" class=\"normal_price\"> 通常価格:<span class=\"price01_default\">{{ Product.getPrice01IncTaxMin|price }}</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  766.                     {% elseif Product.getPrice01Min is not null and Product.getPrice01Max is not null %}
  767.                         <p id=\"detail_description_box__class_normal_range_price\" class=\"normal_price\"> 通常価格:<span class=\"price01_default\">{{ Product.getPrice01IncTaxMin|price }}~ {{ Product.getPrice01IncTaxMax|price }}</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  768.                     {% endif %}
  769.                 {% else -%}
  770.                     {% if Product.getPrice01Max is not null and Product.getPrice01Max > 0 %}
  771.                         <span class=\"tax_management-list_price\"></span>
  772.                             {#
  773.                         <p id=\"detail_description_box__normal_price\" class=\"normal_price\"> 通常価格:<span class=\"price01_default\">{{ Product.getPrice01IncTaxMin|price }}</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  774.                             #}
  775.                     {% endif %}
  776.                 {% endif -%}
  777.                 <!--★販売価格★-->
  778.                 {% set flag = false %}
  779.                 {% if Product.ProductCategories is not empty %}
  780.                     {% for category in Product.ProductCategories %}
  781.                         {% if category.Category.id == 148 or category.Category.id == 133 or category.Category.id == 144 or category.Category.id == 116 %}
  782.                             {% set flag = true %}
  783.                         {% endif %}
  784.                     {% endfor %}
  785.                 {% endif %}
  786.                 {% if flag != true and discount_flag %}
  787.                     {% if is_granted('ROLE_USER') %}
  788.                         <span style=\"color:red;\">[{{ discount_ratio }}%割引対象商品です]</span>
  789.                     {% elseif nonmember_flag %}
  790.                         <span style=\"color:red;\">[{{ nonmember_ratio }}%割引対象商品です]</span>
  791.                     {% endif %}
  792.                 {% endif %}
  793.                 {# % set flag = false %}
  794.                 {% if Product.ProductTag is not empty %}
  795.                     {% for ProductTag in Product.ProductTag %}
  796.                         {% if ProductTag.Tag.id == 1 or ProductTag.Tag.id == 3 or ProductTag.Tag.id == 5 or ProductTag.Tag.id == 6 %}
  797.                             {% set flag = true %}
  798.                         {% endif %}
  799.                     {% endfor %}
  800.                 {% endif %}
  801.                 {% if flag != true %}
  802.                     <span style=\"color:red;\">[5%割引対象商品です]</span><br>
  803.                 {% endif % #}
  804.                 {% if Product.hasProductClass -%}
  805.                     {% if Product.getPrice02IncTaxMin == Product.getPrice02IncTaxMax %}
  806.                         <p id=\"detail_description_box__class_sale_price\" class=\"sale_price text-primary\"> <span class=\"price02_default\">{{ Product.getPrice02IncTaxMin|price }}</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  807.                     {% else %}
  808.                         <p id=\"detail_description_box__class_range_sale_price\" class=\"sale_price text-primary\"> <span class=\"price02_default\">{{ Product.getPrice02IncTaxMin|price }} ~ {{ Product.getPrice02IncTaxMax|price }}</span><span class=\"small\"><small>(税込)</small></span><span class=\"small hide\">税込</span></p>
  809.                     {% endif %}
  810.                 {% else -%}
  811.                     <span class=\"tax_management-sale_price\"></span>
  812.                     <small>
  813.                         {% if Product.stock_min >= 5 %}
  814.                             在庫あり
  815.                         {% elseif Product.stock_min == null %}
  816.                             在庫あり
  817.                         {% else %}
  818.                             在庫:{{ Product.stock_min }}
  819.                         {% endif %}
  820.                     </small>
  821.                     {#
  822.                     <p id=\"detail_description_box__sale_price\" class=\"sale_price text-primary\"> <span class=\"price02_default\">{{ Product.getPrice02IncTaxMin|price }}</span><span class=\"small\"><small>(税込) 在庫:{{ Product.stock_min }}</small></span><span class=\"small hide\">税込</span></p>
  823.                     #}
  824.                 {% endif -%}
  825.                 {# タグID7「取扱商品」の判定とテキスト表示 #}
  826.                 {% set hasHandlingTag = false %}
  827.                 {% for tag in Product.Tags %}
  828.                     {% if tag.id == 7 %}
  829.                         {% set hasHandlingTag = true %}
  830.                     {% endif %}
  831.                 {% endfor %}
  832.                 {% if hasHandlingTag and Product.tag7DisplayText is not empty %}
  833.                     <div class=\"handling-product-notice mt-3 p-3 border rounded bg-light\">
  834.                         <p class=\"mb-0\">{{ Product.tag7DisplayText|nl2br }}</p>
  835.                     </div>
  836.                 {% endif %}
  837.                 <div id=\"detail_cart_box\" class=\"cart_area\">
  838.                     {{ include('Product/sales_restrictions_cart.twig') }}
  839.                     <form action=\"{{ url('product_add_favorite', {id:Product.id}) }}\" method=\"post\">
  840.                         <div class=\"btn_area\">
  841.                             {#Favorite product button#}
  842.                             {% if BaseInfo.option_favorite_product %}
  843.                                 <ul id=\"detail_cart_box__favorite_button\" class=\"row\">
  844.                                     {% if is_favorite == false %}
  845.                                         <li class=\"col-xs-12 col-sm-8\"><button type=\"submit\" id=\"favorite\" class=\"btn btn-info-border btn-block prevention-btn prevention-mask\"><svg class=\"cb cb-heart-circle\"><use xlink:href=\"#cb-heart-circle\"></use></svg>お気に入りに追加</button></li>
  846.                                     {% else %}
  847.                                         <li class=\"col-xs-12 col-sm-8\"><button type=\"submit\" id=\"favorite\" class=\"btn btn-info-border btn-block\" disabled=\"disabled\"><svg class=\"cb cb-heart-circle\"><use xlink:href=\"#cb-heart-circle\"></use></svg>お気に入りに追加済みです</button></li>
  848.                                     {% endif %}
  849.                                 </ul>
  850.                             {% endif %}
  851.                         </div>
  852.                     </form>
  853.                 </div>
  854.                 <!--▲買い物かご-->
  855.                 <!--★商品説明★-->
  856.                 <p id=\"detail_not_stock_box__description_detail\" class=\"item_comment ec-productRole__tags\">{{ Product.description_detail|raw|nl2br }}</p>
  857.                 <!--▼商品コード-->
  858.                 <p id=\"detail_description_box__item_range_code\" class=\"item_code\" style=\"padding-bottom:0;\">商品コード: <span id=\"item_code_default\">
  859.                         {{ Product.code_min }}
  860.                         {% if Product.code_min != Product.code_max %} ~ {{ Product.code_max }}{% endif %}
  861.                         </span> </p>
  862.                 <!--▲商品コード-->
  863.                 <!--▼重さ・サイズ係数-->
  864.                 <div id=\"product_weight_size\" class=\"product_weight_size\">
  865.                     <!-- product_weight_size -->
  866.                     {{ include('Product/weight_size.twig') }}
  867.                 </div>
  868.                 <!--▲重さ・サイズ係数▲-->
  869.             </div>
  870.             <!-- /.item_detail -->
  871.         </section>
  872.         <!--詳細ここまで-->
  873.     </div>
  874.     {# フリーエリア #}
  875.     {% if Product.freearea %}
  876.         <div id=\"sub_area\" class=\"row\">
  877.             <div class=\"col-sm-10 col-sm-offset-1\">
  878.                 <div id=\"detail_free_box__freearea\" class=\"freearea\">{{ include(template_from_string(Product.freearea)) }}</div>
  879.             </div>
  880.         </div>
  881.     {% endif %}
  882. </div>
  883.     <!-- ▲item_detail▲ -->
  884. {% endblock %}""__string_template__97532e188982444e0cb39c0d0b476ce4""");
  885.     }
  886. }