app/Plugin/UnderLimitQuantityDx/Resource/template/default/Product/detail_ex_js.twig line 1

Open in your IDE?
  1. <script>
  2.     {% set under_limit_quantity_list = get_under_limit_quantity_data(Product) %}
  3.     var under_limit_quantity_list = JSON.parse('{{ under_limit_quantity_list|raw }}');
  4.     $('select[name=classcategory_id1]').change(function () {
  5.         var $form = $(this).parents('form');
  6.         var $sele1 = $(this);
  7.         var $sele2 = $form.find('select[name=classcategory_id2]');
  8.         if(!$sele2.length) {
  9.             setUnderQuantity($form, $sele1.val(), null);
  10.         } else {
  11.             console.log('選択クリア');
  12.             $form.find('[name="quantity"]').val(1);
  13.         }
  14.     });
  15.     $('select[name=classcategory_id2]').change(function () {
  16.         var $form = $(this).parents('form');
  17.         var $sele1 = $form.find('select[name=classcategory_id1]');
  18.         var $sele2 = $(this);
  19.         setUnderQuantity($form, $sele1.val(), $sele2.val());
  20.     });
  21.     function setUnderQuantity($form, classcat_id1, classcat_id2) {
  22.         var product_id = $form.find('[name="product_id"]').val();
  23.         console.log('product_id=' + product_id);
  24.         classcat_id2 = classcat_id2 ? classcat_id2 : '';
  25.         var classcat2 = 'undefined';
  26.         if (typeof eccube.classCategories[classcat_id1] !== 'undefined') {
  27.             classcat2 = eccube.classCategories[classcat_id1]['#' + classcat_id2];
  28.         }
  29.         if (typeof classcat2 === 'undefined') {
  30.             // 初期値設定
  31.             console.log('初期値設定');
  32.             var default_under_quantity = under_limit_quantity_list['product'][product_id];
  33.             $form.find('[name="quantity"]').val(default_under_quantity);
  34.         } else {
  35.             var product_class_id = classcat2.product_class_id;
  36.             if(typeof under_limit_quantity_list['productClass'][product_class_id] !== 'undefined') {
  37.                 if(under_limit_quantity_list['productClass'][product_class_id] == "") {
  38.                     // 格納値なし
  39.                     console.log("格納値なし");
  40.                     $form.find('[name="quantity"]').val(1);
  41.                 } else {
  42.                     // 値設定
  43.                     console.log("値設定");
  44.                     var under_quantity = under_limit_quantity_list['productClass'][product_class_id];
  45.                     $form.find('[name="quantity"]').val(under_quantity);
  46.                 }
  47.             } else {
  48.                 // 設定値なし
  49.                 console.log("設定値なし");
  50.                 $form.find('[name="quantity"]').val(1);
  51.             }
  52.         }
  53.     }
  54. </script>