app/template/default/Product/option.twig line 1

Open in your IDE?
  1. {#
    * Plugin Name : ProductOption
    *
    * Copyright (C) BraTech Co., Ltd. All Rights Reserved.
    * http://www.bratech.co.jp/
    *
    * For the full copyright and license information, please view the LICENSE
    * file that was distributed with this source code.
    #}
    
    {% if Product.ProductOptions %}
            {% for ProductOption in Product.ProductOptions %}
                {% set value = 'productoption' ~ ProductOption.Option.id %}
                {% if ProductOption.Option.id >= 2 and ProductOption.Option.id <= 6 %}
                    <div class="noshi_area_{{ Product.id }} noshi_area">
                {% endif %}
                {# ラジオボタン #}
                {% if ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::RADIO_TYPE') %}
                    <div class="ec-blockRadio" style="margin-top: 10px;">
                        <div class="option_Label">
                            <label for="productoption{{ ProductOption.Option.id }}">{{ form[value].vars.label }}</label>{% if form[value].vars.required %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                            {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                            {% endif %}
                        </div>
                        {{ form_widget(form[value]) }}
                    </div>
                {# チェックボックス #}
                {% elseif ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::CHECKBOX_TYPE')%}
                    <div class="ec-checkbox" style="margin-top: 10px;">
                        <div class="option_Label">
                            <label for="productoption{{ ProductOption.Option.id }}">{{ form[value].vars.label }}</label>{% if ProductOption.Option.require_min > 0 %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                            {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                            {% endif %}
                        </div>
                        {{ form_widget(form[value]) }}
                    </div>
                {# プルダウンタイプ #}
                {% elseif  ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::SELECT_TYPE')%}
                    <div class="ec-select" style="margin-top: 10px;">
                        <div class="option_Label">
                            {{ form_label(form[value]) }}{% if form[value].vars.required %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                        {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                        {% endif %}
                        </div>
                        <div {% if form[value].vars.errors is not empty %}class="has-error"{% endif %}>
                            {{ form_widget(form[value]) }}
                        {{ form_errors(form[value]) }}
                        </div>
                    </div>
                {# 数値入力タイプ #}
                {% elseif ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::NUMBER_TYPE') %}
                    <div class="ec-numberInput" style="margin-top: 10px;">
                        <div class="option_Label">
                        {{ form_label(form[value]) }}{% if form[value].vars.required %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                        {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                        {% endif %}
                        </div>
                        <div {% if form[value].vars.errors is not empty %}class="has-error"{% endif %}>
                            {{ form_widget(form[value]) }}
                        {{ form_errors(form[value]) }}
                        </div>
                    </div>
                {# 日付タイプ #}
                {% elseif ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::DATE_TYPE') %}
                    <div class="ec-input" style="margin-top: 10px;">
                        <div class="option_Label">
                        {{ form_label(form[value]) }}{% if form[value].vars.required %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                        {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                        {% endif %}
                        </div>
                        <div {% if form[value].vars.errors is not empty %}class="has-error"{% endif %} style="position: relative">
                            {{ form_widget(form[value], { attr : { 'data-target' : '#'~form[value].vars.id }}) }}
                        {{ form_errors(form[value]) }}
                        </div>
                    </div>
                {# テキストボックスタイプ #}
                {% elseif ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::TEXT_TYPE') %}
                    <div class="ec-input" style="margin-top: 10px;">
                        <div class="option_Label">
                        {{ form_label(form[value]) }}{% if form[value].vars.required %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                        {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                        {% endif %}
                        </div>
                        <div {% if form[value].vars.errors is not empty %}class="has-error"{% endif %}>
                            {{ form_widget(form[value]) }}
                        {{ form_errors(form[value]) }}
                        </div>
                    </div>
                {# テキストエリアタイプ #}
                {% elseif ProductOption.Option.type == constant('Plugin\\ProductOption42\\Entity\\Option::TEXTAREA_TYPE')%}
                    <div class="ec-input" style="margin-top: 10px;">
                        <div class="option_Label">
                            {{ form_label(form[value]) }}{% if form[value].vars.required %}<span class="ec-required">{{'common.required'|trans}}</span>{% endif %}
                        {% if ProductOption.Option.description_flg == constant('Plugin\\ProductOption42\\Entity\\Option::DISP_ON') %}
                            &nbsp;<a href="?" id="option_description_link_{{ Product.id }}_{{ ProductOption.Option.id }}" data="{{ Product.id }}"><span class="ec-link ec-font-size-2">{{'productoption.product.option.description.title'|trans}}</span></a>
                        {% endif %}
                        </div>
                        <div {% if form[value].vars.errors is not empty %}class="has-error"{% endif %}>
                            {{ form_widget(form[value]) }}
                        {{ form_errors(form[value]) }}
                        </div>
                    </div>
                {% endif %}
                {% if ProductOption.Option.id >= 2 and ProductOption.Option.id <= 6 %}
                    </div>
                {% endif %}
            {% endfor %}
    {% endif %}
    
    {#▼RZ 2023.06.21 ADD のしの必要がない場合は入力欄を非表示に▼#}
    {% block javascript %}
        <script>
            const option_name_noshi = 'productoption1';
            const option_name_bag = 'productoption7';
            $(function() {
                //のしの設定
                $('[name=productoption1]').change(function() {
                    var product_id = '';
                    var option_id = $(this).attr('id');
                    //一覧表示の場合は商品ID以外を'_'に置換
                    if ($('body').attr('id') == 'page_product_list') {
                        product_id = option_id.replace(option_name_noshi, '_');
                    }
                    if ($('#'+option_id).prop('selectedIndex') != 1) {
                        $('.noshi_area'+product_id).css('display', 'none');
                    } else {
                        $('.noshi_area'+product_id).css('display', 'block');
                    }
                });
            });
        </script>
    {#}▲RZ 2023.06.21 ADD のしの必要がない場合は入力欄を非表示に▲#}
    {% endblock %}