<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
/* Product/detail.twig */
class __TwigTemplate_c7875bea7f606c4c8706dc5a2346da913e458b7cf0f77f30dcf8fea6c1d72495 extends \Eccube\Twig\Template
{
private $source;
private $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'stylesheet' => [$this, 'block_stylesheet'],
'javascript' => [$this, 'block_javascript'],
'main' => [$this, 'block_main'],
];
}
protected function doGetParent(array $context)
{
// line 11
return "default_frame.twig";
}
protected function doDisplay(array $context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Product/detail.twig"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Product/detail.twig"));
// line 13
$context["body_class"] = "product_page";
// line 11
$this->parent = $this->loadTemplate("default_frame.twig", "Product/detail.twig", 11);
$this->parent->display($context, array_merge($this->blocks, $blocks));
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
}
// line 15
public function block_stylesheet($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
// line 16
echo "<style>
.c-detail-product__title {
color: #807245;
}
.c-detail-product__price-selling--number {
color: #f00;
}
.c-detail-product__price-selling--tax {
color: #f00;
}
.c-detail-product__code--label, .c-detail-product__price-normal--label {
color: #000;
}
.c-detail-product__code--number, .c-detail-product__price-normal--number {
color: #000;
}
.c-detail-product__price-normal--tax {
color: #000;
}
.c-button--unelevated.is-secondary {
background-color: #807245;
}
.c-detail-product__category-list-item a {
color: #807245;
}
.c-button--unelevated.is-primary {
background-color: #000;
}
</style>
";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
}
// line 47
public function block_javascript($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascript"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascript"));
// line 48
echo " <script src=\"";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/eccube.js"), "html", null, true);
echo "\"></script>
<script src=\"https://cdn.jsdelivr.net/npm/swiper@5.3.6/js/swiper.min.js\" integrity=\"sha256-dwAIpWA5jmq1E3AHBeJDH86emZuOEMKZrZxNr9DJAQs=\" crossorigin=\"anonymous\"></script>
<script>
eccube.classCategories = ";
// line 51
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.', 51, $this->source); })()));
echo ";
// 規格2に選択肢を割り当てる。
function fnSetClassCategories(form, classcat_id2_selected) {
var \$form = \$(form);
var product_id = \$form.find('input[name=product_id]').val();
var \$sele1 = \$form.find('select[name=classcategory_id1]');
var \$sele2 = \$form.find('select[name=classcategory_id2]');
eccube.setClassCategories(\$form, product_id, \$sele1, \$sele2, classcat_id2_selected);
}
";
// line 62
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id2", [], "any", true, true, false, 62)) {
// line 63
echo " fnSetClassCategories(
\$('#form1'), ";
// line 64
echo json_encode(twig_get_attribute($this->env, $this->source, twig_get_attribute($this->env, $this->source, 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.', 64, $this->source); })()), "classcategory_id2", [], "any", false, false, false, 64), "vars", [], "any", false, false, false, 64), "value", [], "any", false, false, false, 64));
echo "
);
";
} elseif (twig_get_attribute($this->env, $this->source, // line 66
($context["form"] ?? null), "classcategory_id1", [], "any", true, true, false, 66)) {
// line 67
echo " eccube.checkStock(\$('#form1'), ";
echo twig_escape_filter($this->env, 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.', 67, $this->source); })()), "id", [], "any", false, false, false, 67), "html", null, true);
echo ", ";
echo json_encode(twig_get_attribute($this->env, $this->source, twig_get_attribute($this->env, $this->source, 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.', 67, $this->source); })()), "classcategory_id1", [], "any", false, false, false, 67), "vars", [], "any", false, false, false, 67), "value", [], "any", false, false, false, 67));
echo ", null);
";
}
// line 69
echo "
\$(function() {
// bfcache無効化
\$(window).bind('pageshow', function(event) {
if (event.originalEvent.persisted) {
location.reload(true);
}
});
\$('.add-cart').on('click', function(event) {
";
// line 79
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id1", [], "any", true, true, false, 79)) {
// line 80
echo " // 規格1フォームの必須チェック
if (\$('#classcategory_id1').val() == '__unselected' || \$('#classcategory_id1').val() == '') {
\$('#classcategory_id1')[0].setCustomValidity('";
// line 82
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("項目が選択されていません"), "html", null, true);
echo "');
return true;
} else {
\$('#classcategory_id1')[0].setCustomValidity('');
}
";
}
// line 88
echo "
";
// line 89
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id2", [], "any", true, true, false, 89)) {
// line 90
echo " // 規格2フォームの必須チェック
if (\$('#classcategory_id2').val() == '__unselected' || \$('#classcategory_id2').val() == '') {
\$('#classcategory_id2')[0].setCustomValidity('";
// line 92
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("項目が選択されていません"), "html", null, true);
echo "');
return true;
} else {
\$('#classcategory_id2')[0].setCustomValidity('');
}
";
}
// line 98
echo "
// 個数フォームのチェック
if (\$('#quantity').val() < 1) {
\$('#quantity')[0].setCustomValidity('";
// line 101
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("1以上で入力してください。"), "html", null, true);
echo "');
return true;
} else {
\$('#quantity')[0].setCustomValidity('');
}
event.preventDefault();
\$form = \$('#form1');
\$.ajax({
url: \$form.attr('action'),
type: \$form.attr('method'),
data: \$form.serialize(),
dataType: 'json',
beforeSend: function(xhr, settings) {
// Buttonを無効にする
\$('.add-cart').prop('disabled', true);
}
}).done(function(data) {
// レスポンス内のメッセージをalertで表示
\$.each(data.messages, function() {
\$('#js-product__modal-message').html(this);
});
\$('.js-product__modal-checkbox').prop('checked', true);
// カートブロックを更新する
\$.ajax({
url: \"";
// line 128
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("block_cart");
echo "\",
type: 'GET',
dataType: 'html'
}).done(function(html) {
\$('#js-header__utility-cart').html(html);
});
}).fail(function(data) {
alert('";
// line 135
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへの追加に失敗しました。"), "html", null, true);
echo "');
}).always(function(data) {
// Buttonを有効にする
\$('.add-cart').prop('disabled', false);
});
});
var galleryThumbs = new Swiper('#js-detail-product__gallery-thumbs', {
slidesPerView: 4,
spaceBetween: 16,
freeMode: true,
watchSlidesVisibility: true,
watchSlidesProgress: true
});
var galleryTop = new Swiper('#js-product__detail-gallery-slide', {
slidesPerView: 1,
spaceBetween: 20,
thumbs: {
swiper: galleryThumbs
},
pagination: {
el: '#js-detail-product__gallery-pager-contents',
clickable: true
},
breakpoints: {
479: {
slidesPerView: 1,
spaceBetween: 16
}
}
});
bgHeight(\$('#js-detail-product__price'));
});
var resizeTimer = null;
\$(window).on('resize', function() {
clearTimeout(resizeTimer);
resizeTimer = setTimeout(function() {
bgHeight(\$('#js-detail-product__price'));
}, 200);
});
function bgHeight(elem){
var elemOffsetTop = elem.offset().top,
elemHeight = elem.outerHeight();
\$('#js-layout__body-bg').height(elemOffsetTop + elemHeight);
}
</script>
";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
}
// line 190
public function block_main($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
// line 191
echo " <div class=\"p-product\">
<div class=\"p-product__contents\" id=\"js-product__contents\">
<div class=\"p-product__detail\" id=\"js-product__detail\">
<article class=\"c-detail-product\">
<div class=\"c-detail-product__gallery\">
<div class=\"c-detail-product__gallery-slide\" id=\"js-product__detail-gallery-slide\">
<div class=\"c-detail-product__gallery-slide-contents swiper-wrapper\">
";
// line 198
$context['_parent'] = $context;
$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.', 198, $this->source); })()), "ProductImage", [], "any", false, false, false, 198));
$context['_iterated'] = false;
foreach ($context['_seq'] as $context["_key"] => $context["ProductImage"]) {
// line 199
echo " <div class=\"c-detail-product__gallery-slide-item swiper-slide\">
<div class=\"c-detail-product__image\">
<img class=\"c-detail-product__image-pic\" src=\"";
// line 201
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["ProductImage"], "save_image"), "html", null, true);
echo "\" alt=\"";
echo twig_escape_filter($this->env, 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.', 201, $this->source); })()), "name", [], "any", false, false, false, 201), "html", null, true);
echo "\">
</div>
</div>
";
$context['_iterated'] = true;
}
if (!$context['_iterated']) {
// line 205
echo " <div class=\"c-detail-product__gallery-slide-item swiper-slide\">
<div class=\"c-detail-product__image\">
<img class=\"c-detail-product__image-pic\" src=\"";
// line 207
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(""), "save_image"), "html", null, true);
echo "\" alt=\"";
echo twig_escape_filter($this->env, 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.', 207, $this->source); })()), "name", [], "any", false, false, false, 207), "html", null, true);
echo "\">
</div>
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductImage'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 211
echo " </div>
</div>
<div class=\"c-detail-product__gallery-thumbs\" id=\"js-detail-product__gallery-thumbs\">
<div class=\"c-detail-product__gallery-thumbs-contents swiper-wrapper\">
";
// line 215
$context['_parent'] = $context;
$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.', 215, $this->source); })()), "ProductImage", [], "any", false, false, false, 215));
foreach ($context['_seq'] as $context["_key"] => $context["ProductImage"]) {
// line 216
echo " <div class=\"c-detail-product__gallery-thumbs-item swiper-slide\">
<div class=\"c-detail-product__image\">
<img class=\"c-detail-product__image-pic\" src=\"";
// line 218
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["ProductImage"], "save_image"), "html", null, true);
echo "\" alt=\"";
echo twig_escape_filter($this->env, 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); })()), "name", [], "any", false, false, false, 218), "html", null, true);
echo "\">
</div>
</div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductImage'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 222
echo " </div>
</div>
<div class=\"c-detail-product__gallery-pager\">
<div class=\"c-detail-product__gallery-pager-contents\" id=\"js-detail-product__gallery-pager-contents\"></div>
</div>
</div>
<div class=\"c-detail-product__profile\">
<div class=\"c-detail-product__profile-layout\">
";
// line 232
echo " ";
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.', 232, $this->source); })()), "Tags", [], "any", false, false, false, 232))) {
// line 233
echo " <div class=\"c-detail-product__profile-layout-item\">
<div class=\"c-detail-product__tag\">
<ul class=\"c-detail-product__tag-list\">
";
// line 236
$context['_parent'] = $context;
$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.', 236, $this->source); })()), "Tags", [], "any", false, false, false, 236));
foreach ($context['_seq'] as $context["_key"] => $context["Tag"]) {
// line 237
echo " <li class=\"c-detail-product__tag-list-item\" id=\"c-detail-product__tag-list-item--";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["Tag"], "id", [], "any", false, false, false, 237), "html", null, true);
echo "\">
<span class=\"c-detail-product__tag-text\">";
// line 238
echo twig_escape_filter($this->env, $context["Tag"], "html", null, true);
echo "</span>
</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Tag'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 241
echo " </ul>
</div>
</div>
";
}
// line 245
echo "<!--
<div class=\"c-detail-product__profile-layout-item\">
<div class=\"c-detail-product__favorite\">
";
// line 249
echo " ";
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.', 249, $this->source); })()), "option_favorite_product", [], "any", false, false, false, 249)) {
// line 250
echo " <form action=\"";
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.', 250, $this->source); })()), "id", [], "any", false, false, false, 250)]), "html", null, true);
echo "\" method=\"post\">
";
// line 251
if (((isset($context["is_favorite"]) || array_key_exists("is_favorite", $context) ? $context["is_favorite"] : (function () { throw new RuntimeError('Variable "is_favorite" does not exist.', 251, $this->source); })()) == false)) {
// line 252
echo " <button class=\"c-detail-product__favorite-button c-ripple-surface mdc-ripple-surface\" type=\"submit\" id=\"favorite\">
<i class=\"c-detail-product__favorite-button-icon material-icons\">favorite_border</i>
</button>
";
} else {
// line 256
echo " <button class=\"c-detail-product__favorite-button is-disabled c-ripple-surface mdc-ripple-surface\" type=\"submit\" id=\"favorite\" disabled=\"disabled\">
<i class=\"c-detail-product__favorite-button-icon material-icons\">favorite</i>
</button>
";
}
// line 260
echo " </form>
";
}
// line 262
echo " </div>
</div>
-->
</div>
";
// line 268
echo " <h1 class=\"c-detail-product__title\">";
echo twig_escape_filter($this->env, 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.', 268, $this->source); })()), "name", [], "any", false, false, false, 268), "html", null, true);
echo "</h1>
";
// line 270
echo " ";
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.', 270, $this->source); })()), "code_min", [], "any", false, false, false, 270))) {
// line 271
echo " <div class=\"c-detail-product__code\">
<span class=\"c-detail-product__code--label\">";
// line 272
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("商品コード"), "html", null, true);
echo "</span>
<span class=\"c-detail-product__code--number product-code-default\">";
// line 273
echo twig_escape_filter($this->env, 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.', 273, $this->source); })()), "code_min", [], "any", false, false, false, 273), "html", null, true);
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.', 273, $this->source); })()), "code_min", [], "any", false, false, false, 273) != 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.', 273, $this->source); })()), "code_max", [], "any", false, false, false, 273))) {
echo " ~ ";
echo twig_escape_filter($this->env, 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.', 273, $this->source); })()), "code_max", [], "any", false, false, false, 273), "html", null, true);
}
echo "</span>
</div>
";
}
// line 276
echo " <div class=\"c-detail-product__price\" id=\"js-detail-product__price\">
";
// line 278
echo " <div class=\"c-detail-product__price-normal\">
";
// line 279
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.', 279, $this->source); })()), "hasProductClass", [], "any", false, false, false, 279)) {
// line 280
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.', 280, $this->source); })()), "getPrice01Min", [], "any", false, false, false, 280)) && (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.', 280, $this->source); })()), "getPrice01IncTaxMin", [], "any", false, false, false, 280) == 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.', 280, $this->source); })()), "getPrice01IncTaxMax", [], "any", false, false, false, 280)))) {
// line 281
echo " <span class=\"c-detail-product__price-normal--label\">";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("通常価格"), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-normal--number price01-default\">";
// line 282
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.', 282, $this->source); })()), "getPrice01IncTaxMin", [], "any", false, false, false, 282)), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-normal--tax\">";
// line 283
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("(税込)"), "html", null, true);
echo "</span>
";
} elseif (( !(null === twig_get_attribute($this->env, $this->source, // line 284
(isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 284, $this->source); })()), "getPrice01Min", [], "any", false, false, false, 284)) && !(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.', 284, $this->source); })()), "getPrice01Max", [], "any", false, false, false, 284)))) {
// line 285
echo " <span class=\"c-detail-product__price-normal--label\">";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("通常価格"), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-normal--number price01-default\">";
// line 286
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.', 286, $this->source); })()), "getPrice01IncTaxMin", [], "any", false, false, false, 286)), "html", null, true);
echo " ~ ";
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.', 286, $this->source); })()), "getPrice01IncTaxMax", [], "any", false, false, false, 286)), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-normal--tax\">";
// line 287
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("(税込)"), "html", null, true);
echo "</span>
";
}
// line 289
echo " ";
} else {
// line 290
echo " ";
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.', 290, $this->source); })()), "getPrice01Max", [], "any", false, false, false, 290))) {
// line 291
echo " <span class=\"c-detail-product__price-normal--label\">";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("通常価格"), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-normal--number\">";
// line 292
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.', 292, $this->source); })()), "getPrice01IncTaxMin", [], "any", false, false, false, 292)), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-normal--tax\">";
// line 293
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("(税込)"), "html", null, true);
echo "</span>
";
}
// line 295
echo " ";
}
// line 296
echo " </div>
";
// line 298
echo " <div class=\"c-detail-product__price-selling\">
";
// line 299
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.', 299, $this->source); })()), "hasProductClass", [], "any", false, false, false, 299)) {
// line 300
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.', 300, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 300) == 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.', 300, $this->source); })()), "getPrice02IncTaxMax", [], "any", false, false, false, 300))) {
// line 301
echo " <span class=\"c-detail-product__price-selling--number price02-default\">";
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.', 301, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 301)), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-selling--tax\">";
// line 302
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("(税込)"), "html", null, true);
echo "</span>
";
} else {
// line 304
echo " <span class=\"c-detail-product__price-selling--number price02-default\">";
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.', 304, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 304)), "html", null, true);
echo " ~ ";
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.', 304, $this->source); })()), "getPrice02IncTaxMax", [], "any", false, false, false, 304)), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-selling--tax\">";
// line 305
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("(税込)"), "html", null, true);
echo "</span>
";
}
// line 307
echo " ";
} else {
// line 308
echo " <span class=\"c-detail-product__price-selling--number\">";
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.', 308, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 308)), "html", null, true);
echo "</span>
<span class=\"c-detail-product__price-selling--tax\">";
// line 309
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("(税込)"), "html", null, true);
echo "</span>
";
}
// line 311
echo " </div>
</div>
";
// line 314
echo " ";
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.', 314, $this->source); })()), "ProductCategories", [], "any", false, false, false, 314))) {
// line 315
echo " <dl class=\"c-detail-product__category\">
<dt class=\"c-detail-product__category-label\">";
// line 316
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("関連カテゴリ"), "html", null, true);
echo "</dt>
<dd class=\"c-detail-product__category-detail\">
";
// line 318
$context['_parent'] = $context;
$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.', 318, $this->source); })()), "ProductCategories", [], "any", false, false, false, 318));
foreach ($context['_seq'] as $context["_key"] => $context["ProductCategory"]) {
// line 319
echo " <ul class=\"c-detail-product__category-list u-list-sanitize\">
";
// line 320
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, twig_get_attribute($this->env, $this->source, $context["ProductCategory"], "Category", [], "any", false, false, false, 320), "path", [], "any", false, false, false, 320));
foreach ($context['_seq'] as $context["_key"] => $context["Category"]) {
// line 321
echo " <li class=\"c-detail-product__category-list-item\">
<a class=\"c-detail-product__category-link\" href=\"";
// line 322
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
echo "?category_id=";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["Category"], "id", [], "any", false, false, false, 322), "html", null, true);
echo "\">";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["Category"], "name", [], "any", false, false, false, 322), "html", null, true);
echo "</a>
</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Category'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 325
echo " </ul>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductCategory'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 327
echo " </dd>
</dl>
";
}
// line 330
echo "
<form action=\"";
// line 331
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, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 331, $this->source); })()), "id", [], "any", false, false, false, 331)]), "html", null, true);
echo "\" method=\"post\" id=\"form1\" name=\"form1\">
";
// line 332
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.', 332, $this->source); })()), "stock_find", [], "any", false, false, false, 332)) {
// line 333
echo " ";
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id1", [], "any", true, true, false, 333)) {
// line 334
echo " <div class=\"c-detail-product__form-box\">
<div class=\"c-detail-product__form-box-item\">
<div class=\"c-select mdc-select mdc-select--outlined\">
<i class=\"mdc-select__dropdown-icon\"></i>
";
// line 338
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); })()), "classcategory_id1", [], "any", false, false, false, 338), 'widget', ["attr" => ["class" => "c-select__native-control mdc-select__native-control"]]);
echo "
<div class=\"mdc-notched-outline\">
<div class=\"mdc-notched-outline__leading\"></div>
<div class=\"mdc-notched-outline__notch\"></div>
<div class=\"mdc-notched-outline__trailing\"></div>
</div>
</div>
";
// line 345
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.', 345, $this->source); })()), "classcategory_id1", [], "any", false, false, false, 345), 'errors', ["label_attr" => ["class" => "mdc-select-helper-text mdc-select-helper-text--validation-msg"]]);
echo "
</div>
</div>
";
// line 348
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id2", [], "any", true, true, false, 348)) {
// line 349
echo " <div class=\"c-detail-product__form-box\">
<div class=\"c-detail-product__form-box-item\">
<div class=\"c-select mdc-select mdc-select--outlined\">
<i class=\"mdc-select__dropdown-icon\"></i>
";
// line 353
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.', 353, $this->source); })()), "classcategory_id2", [], "any", false, false, false, 353), 'widget', ["attr" => ["class" => "c-select__native-control mdc-select__native-control"]]);
echo "
<div class=\"mdc-notched-outline\">
<div class=\"mdc-notched-outline__leading\"></div>
<div class=\"mdc-notched-outline__notch\"></div>
<div class=\"mdc-notched-outline__trailing\"></div>
</div>
</div>
";
// line 360
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.', 360, $this->source); })()), "classcategory_id2", [], "any", false, false, false, 360), 'errors', ["label_attr" => ["class" => "mdc-select-helper-text mdc-select-helper-text--validation-msg"]]);
echo "
</div>
</div>
";
}
// line 364
echo " ";
}
// line 365
echo " <div class=\"c-detail-product__form-box\">
<div class=\"c-detail-product__form-box-item\">
<div class=\"c-text-field mdc-text-field mdc-text-field--outlined";
// line 367
echo (($this->extensions['Eccube\Twig\Extension\EccubeExtension']->hasErrors(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.', 367, $this->source); })()), "quantity", [], "any", false, false, false, 367))) ? (" mdc-text-field--invalid") : (""));
echo "\">
";
// line 368
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.', 368, $this->source); })()), "quantity", [], "any", false, false, false, 368), 'widget', ["attr" => ["class" => "c-text-field__input mdc-text-field__input"]]);
echo "
<div class=\"mdc-notched-outline\">
<div class=\"mdc-notched-outline__leading\"></div>
<div class=\"mdc-notched-outline__notch\">
<label class=\"c-floating-label mdc-floating-label\" for=\"quantity\">";
// line 372
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("数量"), "html", null, true);
echo "</label>
</div>
<div class=\"mdc-notched-outline__trailing\"></div>
</div>
</div>
";
// line 377
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.', 377, $this->source); })()), "quantity", [], "any", false, false, false, 377), 'errors', ["label_attr" => ["class" => "mdc-text-field-helper-text mdc-text-field-helper-text--validation-msg"]]);
echo "
</div>
</div>
<div class=\"c-detail-product__actions\">
<div class=\"c-detail-product__actions-item\">
<button class=\"c-button is-secondary c-button--unelevated mdc-button mdc-button--unelevated add-cart\" type=\"submit\">
<span class=\"c-detail-product__button-label\">";
// line 383
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに入れる"), "html", null, true);
echo "</span>
</button>
</div>
</div>
";
} else {
// line 388
echo " <div class=\"c-detail-product__actions\">
<div class=\"c-detail-product__actions-item\">
<button class=\"c-button c-button--unelevated mdc-button mdc-button--unelevated\" type=\"button\" disabled=\"disabled\">
<span class=\"c-detail-product__button-label\">";
// line 391
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("SOLD OUT"), "html", null, true);
echo "</span>
</button>
</div>
</div>
";
}
// line 396
echo "
";
// line 397
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.', 397, $this->source); })()), 'rest');
echo "
</form>
<div class=\"p-product__modal\">
<input class=\"p-product__modal-checkbox js-product__modal-checkbox\" id=\"p-product__modal-checkbox\" type=\"checkbox\">
<div class=\"p-product__modal-overlay\">
<label class=\"p-product__modal-overlay-close\" for=\"p-product__modal-checkbox\"></label>
<div class=\"p-product__modal-contents\">
<label class=\"p-product__modal-close\" for=\"p-product__modal-checkbox\">
<i class=\"p-product__modal-close-icon material-icons\">close</i>
</label>
<div class=\"p-product__modal-header\">
<p class=\"p-product__modal-message\" id=\"js-product__modal-message\">";
// line 409
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに追加しました。"), "html", null, true);
echo "</p>
</div>
<div class=\"p-product__modal-actions\">
<div class=\"p-product__modal-actions-item\">
<a class=\"p-product__modal-button c-button c-button--unelevated is-secondary mdc-button mdc-button--unelevated\" href=\"";
// line 413
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("cart");
echo "\">
<span class=\"c-button__label mdc-button__label\">";
// line 414
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへ進む"), "html", null, true);
echo "</span>
</a>
</div>
<div class=\"p-product__modal-actions-item\">
<label class=\"p-product__modal-button c-button c-button--unelevated is-primary mdc-button mdc-button--unelevated\" for=\"p-product__modal-checkbox\">
<span class=\"c-button__label mdc-button__label\">";
// line 419
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お買い物を続ける"), "html", null, true);
echo "</span>
</label>
</div>
</div>
</div>
</div>
</div>
";
// line 428
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.', 428, $this->source); })()), "description_detail", [], "any", false, false, false, 428)) {
// line 429
echo " <div class=\"c-detail-product__comment\">";
echo 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.', 429, $this->source); })()), "description_detail", [], "any", false, false, false, 429));
echo "</div>
";
}
// line 431
echo "
";
// line 432
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.', 432, $this->source); })()), "freearea", [], "any", false, false, false, 432)) {
// line 433
echo " ";
echo twig_include($this->env, $context, twig_template_from_string($this->env, 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.', 433, $this->source); })()), "freearea", [], "any", false, false, false, 433)));
echo "
";
}
// line 435
echo "
</div>
</article>
</div>
</div>
</div>
";
$__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
$__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
}
public function getTemplateName()
{
return "Product/detail.twig";
}
public function isTraitable()
{
return false;
}
public function getDebugInfo()
{
return array ( 850 => 435, 844 => 433, 842 => 432, 839 => 431, 833 => 429, 831 => 428, 819 => 419, 811 => 414, 807 => 413, 800 => 409, 785 => 397, 782 => 396, 774 => 391, 769 => 388, 761 => 383, 752 => 377, 744 => 372, 737 => 368, 733 => 367, 729 => 365, 726 => 364, 719 => 360, 709 => 353, 703 => 349, 701 => 348, 695 => 345, 685 => 338, 679 => 334, 676 => 333, 674 => 332, 670 => 331, 667 => 330, 662 => 327, 655 => 325, 642 => 322, 639 => 321, 635 => 320, 632 => 319, 628 => 318, 623 => 316, 620 => 315, 617 => 314, 613 => 311, 608 => 309, 603 => 308, 600 => 307, 595 => 305, 588 => 304, 583 => 302, 578 => 301, 576 => 300, 574 => 299, 571 => 298, 568 => 296, 565 => 295, 560 => 293, 556 => 292, 551 => 291, 548 => 290, 545 => 289, 540 => 287, 534 => 286, 529 => 285, 527 => 284, 523 => 283, 519 => 282, 514 => 281, 512 => 280, 510 => 279, 507 => 278, 504 => 276, 494 => 273, 490 => 272, 487 => 271, 484 => 270, 479 => 268, 472 => 262, 468 => 260, 462 => 256, 456 => 252, 454 => 251, 449 => 250, 446 => 249, 441 => 245, 435 => 241, 426 => 238, 421 => 237, 417 => 236, 412 => 233, 409 => 232, 398 => 222, 386 => 218, 382 => 216, 378 => 215, 372 => 211, 360 => 207, 356 => 205, 345 => 201, 341 => 199, 336 => 198, 327 => 191, 317 => 190, 253 => 135, 243 => 128, 213 => 101, 208 => 98, 199 => 92, 195 => 90, 193 => 89, 190 => 88, 181 => 82, 177 => 80, 175 => 79, 163 => 69, 155 => 67, 153 => 66, 148 => 64, 145 => 63, 143 => 62, 129 => 51, 122 => 48, 112 => 47, 73 => 16, 63 => 15, 52 => 11, 50 => 13, 37 => 11,);
}
public function getSourceContext()
{
return new Source("{#
This file is part of EC-CUBE
Copyright(c) LOCKON CO.,LTD. All Rights Reserved.
http://www.lockon.co.jp/
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
#}
{% extends 'default_frame.twig' %}
{% set body_class = 'product_page' %}
{% block stylesheet %}
<style>
.c-detail-product__title {
color: #807245;
}
.c-detail-product__price-selling--number {
color: #f00;
}
.c-detail-product__price-selling--tax {
color: #f00;
}
.c-detail-product__code--label, .c-detail-product__price-normal--label {
color: #000;
}
.c-detail-product__code--number, .c-detail-product__price-normal--number {
color: #000;
}
.c-detail-product__price-normal--tax {
color: #000;
}
.c-button--unelevated.is-secondary {
background-color: #807245;
}
.c-detail-product__category-list-item a {
color: #807245;
}
.c-button--unelevated.is-primary {
background-color: #000;
}
</style>
{% endblock %}
{% block javascript %}
<script src=\"{{ asset('assets/js/eccube.js') }}\"></script>
<script src=\"https://cdn.jsdelivr.net/npm/swiper@5.3.6/js/swiper.min.js\" integrity=\"sha256-dwAIpWA5jmq1E3AHBeJDH86emZuOEMKZrZxNr9DJAQs=\" crossorigin=\"anonymous\"></script>
<script>
eccube.classCategories = {{ class_categories_as_json(Product)|raw }};
// 規格2に選択肢を割り当てる。
function fnSetClassCategories(form, classcat_id2_selected) {
var \$form = \$(form);
var product_id = \$form.find('input[name=product_id]').val();
var \$sele1 = \$form.find('select[name=classcategory_id1]');
var \$sele2 = \$form.find('select[name=classcategory_id2]');
eccube.setClassCategories(\$form, product_id, \$sele1, \$sele2, classcat_id2_selected);
}
{% if form.classcategory_id2 is defined %}
fnSetClassCategories(
\$('#form1'), {{ form.classcategory_id2.vars.value|json_encode|raw }}
);
{% elseif form.classcategory_id1 is defined %}
eccube.checkStock(\$('#form1'), {{ Product.id }}, {{ form.classcategory_id1.vars.value|json_encode|raw }}, null);
{% endif %}
\$(function() {
// bfcache無効化
\$(window).bind('pageshow', function(event) {
if (event.originalEvent.persisted) {
location.reload(true);
}
});
\$('.add-cart').on('click', function(event) {
{% if form.classcategory_id1 is defined %}
// 規格1フォームの必須チェック
if (\$('#classcategory_id1').val() == '__unselected' || \$('#classcategory_id1').val() == '') {
\$('#classcategory_id1')[0].setCustomValidity('{{ '項目が選択されていません'|trans }}');
return true;
} else {
\$('#classcategory_id1')[0].setCustomValidity('');
}
{% endif %}
{% if form.classcategory_id2 is defined %}
// 規格2フォームの必須チェック
if (\$('#classcategory_id2').val() == '__unselected' || \$('#classcategory_id2').val() == '') {
\$('#classcategory_id2')[0].setCustomValidity('{{ '項目が選択されていません'|trans }}');
return true;
} else {
\$('#classcategory_id2')[0].setCustomValidity('');
}
{% endif %}
// 個数フォームのチェック
if (\$('#quantity').val() < 1) {
\$('#quantity')[0].setCustomValidity('{{ '1以上で入力してください。'|trans }}');
return true;
} else {
\$('#quantity')[0].setCustomValidity('');
}
event.preventDefault();
\$form = \$('#form1');
\$.ajax({
url: \$form.attr('action'),
type: \$form.attr('method'),
data: \$form.serialize(),
dataType: 'json',
beforeSend: function(xhr, settings) {
// Buttonを無効にする
\$('.add-cart').prop('disabled', true);
}
}).done(function(data) {
// レスポンス内のメッセージをalertで表示
\$.each(data.messages, function() {
\$('#js-product__modal-message').html(this);
});
\$('.js-product__modal-checkbox').prop('checked', true);
// カートブロックを更新する
\$.ajax({
url: \"{{ url('block_cart') }}\",
type: 'GET',
dataType: 'html'
}).done(function(html) {
\$('#js-header__utility-cart').html(html);
});
}).fail(function(data) {
alert('{{ 'カートへの追加に失敗しました。'|trans }}');
}).always(function(data) {
// Buttonを有効にする
\$('.add-cart').prop('disabled', false);
});
});
var galleryThumbs = new Swiper('#js-detail-product__gallery-thumbs', {
slidesPerView: 4,
spaceBetween: 16,
freeMode: true,
watchSlidesVisibility: true,
watchSlidesProgress: true
});
var galleryTop = new Swiper('#js-product__detail-gallery-slide', {
slidesPerView: 1,
spaceBetween: 20,
thumbs: {
swiper: galleryThumbs
},
pagination: {
el: '#js-detail-product__gallery-pager-contents',
clickable: true
},
breakpoints: {
479: {
slidesPerView: 1,
spaceBetween: 16
}
}
});
bgHeight(\$('#js-detail-product__price'));
});
var resizeTimer = null;
\$(window).on('resize', function() {
clearTimeout(resizeTimer);
resizeTimer = setTimeout(function() {
bgHeight(\$('#js-detail-product__price'));
}, 200);
});
function bgHeight(elem){
var elemOffsetTop = elem.offset().top,
elemHeight = elem.outerHeight();
\$('#js-layout__body-bg').height(elemOffsetTop + elemHeight);
}
</script>
{% endblock %}
{% block main %}
<div class=\"p-product\">
<div class=\"p-product__contents\" id=\"js-product__contents\">
<div class=\"p-product__detail\" id=\"js-product__detail\">
<article class=\"c-detail-product\">
<div class=\"c-detail-product__gallery\">
<div class=\"c-detail-product__gallery-slide\" id=\"js-product__detail-gallery-slide\">
<div class=\"c-detail-product__gallery-slide-contents swiper-wrapper\">
{% for ProductImage in Product.ProductImage %}
<div class=\"c-detail-product__gallery-slide-item swiper-slide\">
<div class=\"c-detail-product__image\">
<img class=\"c-detail-product__image-pic\" src=\"{{ asset(ProductImage, 'save_image') }}\" alt=\"{{ Product.name }}\">
</div>
</div>
{% else %}
<div class=\"c-detail-product__gallery-slide-item swiper-slide\">
<div class=\"c-detail-product__image\">
<img class=\"c-detail-product__image-pic\" src=\"{{ asset(''|no_image_product, 'save_image') }}\" alt=\"{{ Product.name }}\">
</div>
</div>
{% endfor %}
</div>
</div>
<div class=\"c-detail-product__gallery-thumbs\" id=\"js-detail-product__gallery-thumbs\">
<div class=\"c-detail-product__gallery-thumbs-contents swiper-wrapper\">
{% for ProductImage in Product.ProductImage %}
<div class=\"c-detail-product__gallery-thumbs-item swiper-slide\">
<div class=\"c-detail-product__image\">
<img class=\"c-detail-product__image-pic\" src=\"{{ asset(ProductImage, 'save_image') }}\" alt=\"{{ Product.name }}\">
</div>
</div>
{% endfor %}
</div>
</div>
<div class=\"c-detail-product__gallery-pager\">
<div class=\"c-detail-product__gallery-pager-contents\" id=\"js-detail-product__gallery-pager-contents\"></div>
</div>
</div>
<div class=\"c-detail-product__profile\">
<div class=\"c-detail-product__profile-layout\">
{# タグ #}
{% if Product.Tags is not empty %}
<div class=\"c-detail-product__profile-layout-item\">
<div class=\"c-detail-product__tag\">
<ul class=\"c-detail-product__tag-list\">
{% for Tag in Product.Tags %}
<li class=\"c-detail-product__tag-list-item\" id=\"c-detail-product__tag-list-item--{{ Tag.id }}\">
<span class=\"c-detail-product__tag-text\">{{ Tag }}</span>
</li>
{% endfor %}
</ul>
</div>
</div>
{% endif %}
<!--
<div class=\"c-detail-product__profile-layout-item\">
<div class=\"c-detail-product__favorite\">
{# お気に入り #}
{% if BaseInfo.option_favorite_product %}
<form action=\"{{ url('product_add_favorite', {id:Product.id}) }}\" method=\"post\">
{% if is_favorite == false %}
<button class=\"c-detail-product__favorite-button c-ripple-surface mdc-ripple-surface\" type=\"submit\" id=\"favorite\">
<i class=\"c-detail-product__favorite-button-icon material-icons\">favorite_border</i>
</button>
{% else %}
<button class=\"c-detail-product__favorite-button is-disabled c-ripple-surface mdc-ripple-surface\" type=\"submit\" id=\"favorite\" disabled=\"disabled\">
<i class=\"c-detail-product__favorite-button-icon material-icons\">favorite</i>
</button>
{% endif %}
</form>
{% endif %}
</div>
</div>
-->
</div>
{# 商品名 #}
<h1 class=\"c-detail-product__title\">{{ Product.name }}</h1>
{# 商品コード #}
{% if Product.code_min is not empty %}
<div class=\"c-detail-product__code\">
<span class=\"c-detail-product__code--label\">{{ '商品コード'|trans }}</span>
<span class=\"c-detail-product__code--number product-code-default\">{{ Product.code_min }}{% if Product.code_min != Product.code_max %} ~ {{ Product.code_max }}{% endif %}</span>
</div>
{% endif %}
<div class=\"c-detail-product__price\" id=\"js-detail-product__price\">
{# 通常価格 #}
<div class=\"c-detail-product__price-normal\">
{% if Product.hasProductClass -%}
{% if Product.getPrice01Min is not null and Product.getPrice01IncTaxMin == Product.getPrice01IncTaxMax %}
<span class=\"c-detail-product__price-normal--label\">{{ '通常価格'|trans }}</span>
<span class=\"c-detail-product__price-normal--number price01-default\">{{ Product.getPrice01IncTaxMin|price }}</span>
<span class=\"c-detail-product__price-normal--tax\">{{ '(税込)'|trans }}</span>
{% elseif Product.getPrice01Min is not null and Product.getPrice01Max is not null %}
<span class=\"c-detail-product__price-normal--label\">{{ '通常価格'|trans }}</span>
<span class=\"c-detail-product__price-normal--number price01-default\">{{ Product.getPrice01IncTaxMin|price }} ~ {{ Product.getPrice01IncTaxMax|price }}</span>
<span class=\"c-detail-product__price-normal--tax\">{{ '(税込)'|trans }}</span>
{% endif %}
{% else %}
{% if Product.getPrice01Max is not null %}
<span class=\"c-detail-product__price-normal--label\">{{ '通常価格'|trans }}</span>
<span class=\"c-detail-product__price-normal--number\">{{ Product.getPrice01IncTaxMin|price }}</span>
<span class=\"c-detail-product__price-normal--tax\">{{ '(税込)'|trans }}</span>
{% endif %}
{% endif %}
</div>
{# 販売価格 #}
<div class=\"c-detail-product__price-selling\">
{% if Product.hasProductClass -%}
{% if Product.getPrice02IncTaxMin == Product.getPrice02IncTaxMax %}
<span class=\"c-detail-product__price-selling--number price02-default\">{{ Product.getPrice02IncTaxMin|price }}</span>
<span class=\"c-detail-product__price-selling--tax\">{{ '(税込)'|trans }}</span>
{% else %}
<span class=\"c-detail-product__price-selling--number price02-default\">{{ Product.getPrice02IncTaxMin|price }} ~ {{ Product.getPrice02IncTaxMax|price }}</span>
<span class=\"c-detail-product__price-selling--tax\">{{ '(税込)'|trans }}</span>
{% endif %}
{% else %}
<span class=\"c-detail-product__price-selling--number\">{{ Product.getPrice02IncTaxMin|price }}</span>
<span class=\"c-detail-product__price-selling--tax\">{{ '(税込)'|trans }}</span>
{% endif %}
</div>
</div>
{# 関連カテゴリ #}
{% if Product.ProductCategories is not empty %}
<dl class=\"c-detail-product__category\">
<dt class=\"c-detail-product__category-label\">{{ '関連カテゴリ'|trans }}</dt>
<dd class=\"c-detail-product__category-detail\">
{% for ProductCategory in Product.ProductCategories %}
<ul class=\"c-detail-product__category-list u-list-sanitize\">
{% for Category in ProductCategory.Category.path %}
<li class=\"c-detail-product__category-list-item\">
<a class=\"c-detail-product__category-link\" href=\"{{ url('product_list') }}?category_id={{ Category.id }}\">{{ Category.name }}</a>
</li>
{% endfor %}
</ul>
{% endfor %}
</dd>
</dl>
{% endif %}
<form action=\"{{ url('product_add_cart', {id:Product.id}) }}\" method=\"post\" id=\"form1\" name=\"form1\">
{% if Product.stock_find %}
{% if form.classcategory_id1 is defined %}
<div class=\"c-detail-product__form-box\">
<div class=\"c-detail-product__form-box-item\">
<div class=\"c-select mdc-select mdc-select--outlined\">
<i class=\"mdc-select__dropdown-icon\"></i>
{{ form_widget(form.classcategory_id1, {'attr': { 'class': 'c-select__native-control mdc-select__native-control' }}) }}
<div class=\"mdc-notched-outline\">
<div class=\"mdc-notched-outline__leading\"></div>
<div class=\"mdc-notched-outline__notch\"></div>
<div class=\"mdc-notched-outline__trailing\"></div>
</div>
</div>
{{ form_errors(form.classcategory_id1, {'label_attr': {'class': 'mdc-select-helper-text mdc-select-helper-text--validation-msg'}}) }}
</div>
</div>
{% if form.classcategory_id2 is defined %}
<div class=\"c-detail-product__form-box\">
<div class=\"c-detail-product__form-box-item\">
<div class=\"c-select mdc-select mdc-select--outlined\">
<i class=\"mdc-select__dropdown-icon\"></i>
{{ form_widget(form.classcategory_id2, {'attr': { 'class': 'c-select__native-control mdc-select__native-control' }}) }}
<div class=\"mdc-notched-outline\">
<div class=\"mdc-notched-outline__leading\"></div>
<div class=\"mdc-notched-outline__notch\"></div>
<div class=\"mdc-notched-outline__trailing\"></div>
</div>
</div>
{{ form_errors(form.classcategory_id2, {'label_attr': {'class': 'mdc-select-helper-text mdc-select-helper-text--validation-msg'}}) }}
</div>
</div>
{% endif %}
{% endif %}
<div class=\"c-detail-product__form-box\">
<div class=\"c-detail-product__form-box-item\">
<div class=\"c-text-field mdc-text-field mdc-text-field--outlined{{ has_errors(form.quantity) ? ' mdc-text-field--invalid' }}\">
{{ form_widget(form.quantity, {'attr': { 'class': 'c-text-field__input mdc-text-field__input' }}) }}
<div class=\"mdc-notched-outline\">
<div class=\"mdc-notched-outline__leading\"></div>
<div class=\"mdc-notched-outline__notch\">
<label class=\"c-floating-label mdc-floating-label\" for=\"quantity\">{{ '数量'|trans }}</label>
</div>
<div class=\"mdc-notched-outline__trailing\"></div>
</div>
</div>
{{ form_errors(form.quantity, {'label_attr': {'class': 'mdc-text-field-helper-text mdc-text-field-helper-text--validation-msg'}}) }}
</div>
</div>
<div class=\"c-detail-product__actions\">
<div class=\"c-detail-product__actions-item\">
<button class=\"c-button is-secondary c-button--unelevated mdc-button mdc-button--unelevated add-cart\" type=\"submit\">
<span class=\"c-detail-product__button-label\">{{ 'カートに入れる'|trans }}</span>
</button>
</div>
</div>
{% else %}
<div class=\"c-detail-product__actions\">
<div class=\"c-detail-product__actions-item\">
<button class=\"c-button c-button--unelevated mdc-button mdc-button--unelevated\" type=\"button\" disabled=\"disabled\">
<span class=\"c-detail-product__button-label\">{{ 'SOLD OUT'|trans }}</span>
</button>
</div>
</div>
{% endif %}
{{ form_rest(form) }}
</form>
<div class=\"p-product__modal\">
<input class=\"p-product__modal-checkbox js-product__modal-checkbox\" id=\"p-product__modal-checkbox\" type=\"checkbox\">
<div class=\"p-product__modal-overlay\">
<label class=\"p-product__modal-overlay-close\" for=\"p-product__modal-checkbox\"></label>
<div class=\"p-product__modal-contents\">
<label class=\"p-product__modal-close\" for=\"p-product__modal-checkbox\">
<i class=\"p-product__modal-close-icon material-icons\">close</i>
</label>
<div class=\"p-product__modal-header\">
<p class=\"p-product__modal-message\" id=\"js-product__modal-message\">{{ 'カートに追加しました。'|trans }}</p>
</div>
<div class=\"p-product__modal-actions\">
<div class=\"p-product__modal-actions-item\">
<a class=\"p-product__modal-button c-button c-button--unelevated is-secondary mdc-button mdc-button--unelevated\" href=\"{{ url('cart') }}\">
<span class=\"c-button__label mdc-button__label\">{{ 'カートへ進む'|trans }}</span>
</a>
</div>
<div class=\"p-product__modal-actions-item\">
<label class=\"p-product__modal-button c-button c-button--unelevated is-primary mdc-button mdc-button--unelevated\" for=\"p-product__modal-checkbox\">
<span class=\"c-button__label mdc-button__label\">{{ 'お買い物を続ける'|trans }}</span>
</label>
</div>
</div>
</div>
</div>
</div>
{% if Product.description_detail %}
<div class=\"c-detail-product__comment\">{{ Product.description_detail|raw|nl2br }}</div>
{% endif %}
{% if Product.freearea %}
{{ include(template_from_string(Product.freearea)) }}
{% endif %}
</div>
</article>
</div>
</div>
</div>
{% endblock %}", "Product/detail.twig", "/home/admin/meldia-mp/web/meldia_mp_shop/app/template/meldiastore/Product/detail.twig");
}
}