Changeset 20595


Ignore:
Timestamp:
2011/03/10 23:23:15 (13 years ago)
Author:
nanasess
bzr:base-revision:
svn-v4:1e3b908f-19a9-db11-a64c-001125224ba8:branches/version-2_5-dev:20594
bzr:committer:
Kentaro Ohkouchi <ohkouchi@loop-az.jp>
bzr:file-ids:

data/Smarty/templates/admin/products/product_class.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fproducts%2Fproduct_class.tpl
data/Smarty/templates/admin/products/product_class_confirm.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fproducts%2Fproduct_class_confirm.tpl
data/class/SC_Product.php 18277@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Fcomu-ver2%2Fdata%2Fclass%2FSC_Product.php
data/class/helper/SC_Helper_DB.php 15176@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fhelper%2FSC_Helper_DB.php
data/class/pages/admin/products/LC_Page_Admin_Products.php 15342@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Fproducts%2FLC_Page_Admin_Products.php
data/class/pages/admin/products/LC_Page_Admin_Products_ClassCategory.php 15486@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Fproducts%2FLC_Page_Admin_Products_ClassCategory.php
data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php 15559@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Fproducts%2FLC_Page_Admin_Products_ProductClass.php
data/class/pages/products/LC_Page_Products_List.php 15154@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fproducts%2FLC_Page_Products_List.php
html/install/sql/insert_data.sql 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fhtml%2Finstall%2Fsql%2Finsert_data.sql
html/user_data/packages/admin/js/admin.js 18900@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Fversion-2_5-dev%2Fhtml%2Fuser_data%2Fpackages%2Fadmin%2Fjs%2Fadmin.js
bzr:mapping-version:
v4
bzr:merge:

ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
bzr:repository-uuid:
1e3b908f-19a9-db11-a64c-001125224ba8
bzr:revision-id:
ohkouchi@loop-az.jp-20110310142305-qjs7yo89ouuc2kyb
bzr:revno:
3322
bzr:revprop:branch-nick:
branches/version-2_5-dev
bzr:root:
branches/version-2_5-dev
bzr:text-revisions:

data/Smarty/templates/admin/products/product_class.tpl ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
data/Smarty/templates/admin/products/product_class_confirm.tpl ohkouchi@loop-az.jp-20110310120612-5yubhkd34q0kh1wv
data/class/SC_Product.php ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
data/class/helper/SC_Helper_DB.php ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
data/class/pages/admin/products/LC_Page_Admin_Products.php ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
data/class/pages/admin/products/LC_Page_Admin_Products_ClassCategory.php ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
data/class/pages/products/LC_Page_Products_List.php ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
html/install/sql/insert_data.sql ohkouchi@loop-az.jp-20110310141144-qucx7d0zkt4jgao9
html/user_data/packages/admin/js/admin.js ohkouchi@loop-az.jp-20110310121605-jifwd9debb5hzvwo
bzr:timestamp:
2011-03-10 23:23:05.288000107 +0900
bzr:user-agent:
bzr2.2.1+bzr-svn1.0.4
svn:original-date:
2011-03-10T14:23:05.288000Z
Message:
  • #1097([管理画面]商品管理(商品規格登録):規格編集で、登録されていない行にもチェックが入っている)
  • #1064([管理画面]商品管理(商品規格登録):規格編集で、登録されている規格を外して登録しても削除されない)
  • #991(商品規格登録での不具合)
  • #1101([フロント]商品(一覧、詳細):規格削除しても価格表記に削除した価格も出ている)
  • 商品規格管理画面を全面的にリファクタリング
  • TODO 入力チェック, ダウンロード販売用ファイルには後続のコミットで対応します
Location:
branches/version-2_5-dev
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/Smarty/templates/admin/products/product_class.tpl

    r20514 r20595  
    2222 */ 
    2323*}--> 
     24<script type="text/javascript">//<![CDATA[ 
     25$(function() { 
     26    $('input[id^=stock_unlimited_]').each(function() { 
     27        var index = $(this).attr('id').replace(/^stock_unlimited_/ig, ''); 
     28        var checked = $(this).attr('checked'); 
     29 
     30        if (checked) { 
     31            $('#stock_' + index) 
     32                .attr('readonly', true) 
     33                .css('background-color', '<!--{$smarty.const.DISABLED_RGB}-->'); 
     34        } 
     35    }); 
     36 
     37    $('input[id^=stock_unlimited_]').change(function() { 
     38        var index = $(this).attr('id').replace(/^stock_unlimited_/ig, ''); 
     39        var checked = $(this).attr('checked'); 
     40 
     41        if (checked) { 
     42            $('#stock_' + index) 
     43                .attr('readonly', true) 
     44                .css('background-color', '<!--{$smarty.const.DISABLED_RGB}-->'); 
     45        } else { 
     46            $('#stock_' + index) 
     47                .attr('readonly', false) 
     48                .css('background-color', ''); 
     49        } 
     50    }); 
     51}); 
     52//]]> 
     53</script> 
    2454<h2>商品規格登録</h2> 
    2555<form name="form1" id="form1" method="post" action="" enctype="multipart/form-data"> 
    2656<input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    27 <!--{foreach key=key item=item from=$arrSearchHidden}--> 
    28 <input type="hidden" name="<!--{$key}-->" value="<!--{$item|h}-->" /> 
    29 <!--{/foreach}--> 
     57<!--{* foreach key=name item=item from=$arrSearchHidden *}--> 
     58<input type="hidden" name="<!--{$name}-->" value="<!--{$item|h}-->" /> 
     59<!--{* /foreach *}--> 
    3060<input type="hidden" name="mode" value="edit" /> 
    31 <input type="hidden" name="product_id" value="<!--{$tpl_product_id}-->" /> 
    32 <input type="hidden" name="pageno" value="<!--{$tpl_pageno}-->" /> 
     61<input type="hidden" name="product_id" value="<!--{$arrForm.product_id.value|h}-->" /> 
    3362<input type="hidden" name="down_key" value=""> 
    34 <!--{foreach key=key item=item from=$arrHidden}--> 
    35 <input type="hidden" name="<!--{$key}-->" value="<!--{$item|h}-->" /> 
    36 <!--{/foreach}--> 
     63<!--{* foreach key=name item=item from=$arrHidden *}--> 
     64<input type="hidden" name="<!--{$name}-->" value="<!--{$item|h}-->" /> 
     65<!--{* /foreach *}--> 
    3766<div id="products" class="contents-main"> 
    3867 
     
    4069        <tr> 
    4170            <th>商品名</th> 
    42             <td><!--{$arrForm.product_name|h}--></td> 
     71            <td><!--{$arrForm.product_name.value|h}--></td> 
    4372        </tr> 
    4473        <tr> 
    4574            <th>規格1<span class="attention">*</span></th> 
    4675            <td> 
    47                 <!--{if $arrErr.select_class_id1}--> 
    48                 <span class="attention"><!--{$arrErr.select_class_id1}--></span> 
     76                <!--{assign var=key value="select_class_id1"}--> 
     77                <!--{if $arrErr[$key]}--> 
     78                <span class="attention"><!--{$arrErr[$key]}--></span> 
    4979                <!--{/if}--> 
    50                 <select name="select_class_id1"> 
     80 
     81                <select name="<!--{$key}-->"> 
    5182                    <option value="">選択してください</option> 
    52                     <!--{html_options options=$arrClass selected=$arrForm.select_class_id1}--> 
     83                    <!--{html_options options=$arrClass selected=$arrForm[$key].value}--> 
    5384                </select> 
    5485            </td> 
     
    5788            <th>規格2</th> 
    5889            <td> 
    59                 <!--{if $arrErr.select_class_id2}--> 
    60                 <span class="attention"><!--{$arrErr.select_class_id2}--></span> 
     90                <!--{assign var=key value="select_class_id2"}--> 
     91                <!--{if $arrErr[$key]}--> 
     92                <span class="attention"><!--{$arrErr[$key]}--></span> 
    6193                <!--{/if}--> 
    62                 <select name="select_class_id2"> 
     94                <select name="<!--{$key}-->"> 
    6395                    <option value="">選択してください</option> 
    64                     <!--{html_options options=$arrClass selected=$arrForm.select_class_id2}--> 
     96                    <!--{html_options options=$arrClass selected=$arrForm[$key].value}--> 
    6597                </select> 
    6698            </td> 
     
    71103            <li><a class="btn-action" href="javascript:;" onclick="fnChangeAction('<!--{$smarty.const.ADMIN_PRODUCTS_URLPATH}-->'); fnModeSubmit('search','',''); return false;" ><span class="btn-prev">検索結果へ戻る</span></a></li> 
    72104            <li><a class="btn-action" href="javascript:;" onclick="fnModeSubmit('disp','',''); return false;"><span class="btn-next">表示する</span></a></li> 
    73         <!--{if count($arrClassCat) > 0}--> 
     105        <!--{if $arrForm.total.value > 0}--> 
    74106            <li><a class="btn-action" href="javascript:;" onclick="fnModeSubmit('delete','',''); return false;"><span class="btn-next">削除する</span></a></li> 
    75107        <!--{/if}--> 
     
    77109    </div> 
    78110 
    79     <!--{if count($arrClassCat) > 0}--> 
     111    <!--{if $arrForm.total.value > 0}--> 
    80112 
    81113    <!--{foreach item=item name=i from=$arrClassCat}--> 
     
    90122    </div> 
    91123 
    92     <!--{assign var=class_id1 value=$arrForm.class_id1}--> 
    93     <!--{assign var=class_id2 value=$arrForm.class_id2}--> 
    94     <input type="hidden" name="class_id1" value="<!--{$class_id1}-->" /> 
    95     <input type="hidden" name="class_id2" value="<!--{$class_id2}-->" /> 
     124    <!--{assign var=key1 value="class_id1"}--> 
     125    <!--{assign var=key2 value="class_id2"}--> 
     126    <!--{assign var=class_id1 value=$arrForm[$key1].value|h}--> 
     127    <!--{assign var=class_id2 value=$arrForm[$key2].value|h}--> 
     128    <input type="hidden" name="<!--{$key1}-->" value="<!--{$class_id1}-->" /> 
     129    <input type="hidden" name="<!--{$key2}-->" value="<!--{$class_id2}-->" /> 
    96130    <table class="list" width="900"> 
    97131        <colgroup width="5%"> 
     
    108142        <tr> 
    109143            <th><input type="checkbox" onclick="fnAllCheck(this, 'input[name^=check]')" id="allCheck" /> <label for="allCheck"><br>登録</label></th> 
    110             <th>規格1<br>(<!--{$arrClass[$class_id1]|default:"未選択"}-->)</th> 
    111             <th>規格2<br>(<!--{$arrClass[$class_id2]|default:"未選択"}-->)</th> 
     144            <th>規格1<br>(<!--{$arrClass[$class_id1]|default:"未選択"|h}-->)</th> 
     145            <th>規格2<br>(<!--{$arrClass[$class_id2]|default:"未選択"|h}-->)</th> 
    112146            <th>商品コード</th> 
    113147            <th>在庫数<span class="attention">*</span></th> 
     
    118152            <th>ダウンロード商品用<br>ファイル</th> 
    119153        </tr> 
    120         <!--{section name=cnt loop=$arrClassCat}--> 
     154        <!--{section name=cnt loop=$arrForm.total.value}--> 
     155            <!--{assign var=index value=$smarty.section.cnt.index}--> 
     156 
     157            <!--{* TODO *}--> 
    121158            <!--{assign var=key value="error:`$smarty.section.cnt.iteration`"}--> 
    122159            <!--{if $arrErr[$key] != ""}--> 
     
    126163            <!--{/if}--> 
    127164            <tr > 
    128                 <!--{assign var=key value="check:`$smarty.section.cnt.iteration`"}--> 
     165 
    129166                <td class="center" > 
    130                     <!--{assign var=id value="product_class_id:`$smarty.section.cnt.iteration`"}--> 
    131                     <input type="hidden" name="classcategory_id1:<!--{$smarty.section.cnt.iteration}-->" value="<!--{$arrClassCat[cnt].classcategory_id1}-->" /> 
    132                     <input type="hidden" name="classcategory_id2:<!--{$smarty.section.cnt.iteration}-->" value="<!--{$arrClassCat[cnt].classcategory_id2}-->" /> 
    133                     <input type="hidden" name="name1:<!--{$smarty.section.cnt.iteration}-->" value="<!--{$arrClassCat[cnt].name1}-->" /> 
    134                     <input type="hidden" name="name2:<!--{$smarty.section.cnt.iteration}-->" value="<!--{$arrClassCat[cnt].name2}-->" /> 
    135                     <input type="hidden" name="product_class_id:<!--{$smarty.section.cnt.iteration}-->" value="<!--{$arrForm[$id]}-->" /> 
    136                     <input type="checkbox" name="check:<!--{$smarty.section.cnt.iteration}-->" value="1" <!--{if $arrForm[$key] == 1}-->checked="checked"<!--{/if}-->> 
    137                 </td> 
    138                 <td class="center"><!--{$arrClassCat[cnt].name1}--></td> 
    139                 <td class="center"><!--{$arrClassCat[cnt].name2}--></td> 
    140                 <!--{assign var=key value="product_code:`$smarty.section.cnt.iteration`"}--> 
    141                 <td class="center"><input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key]}-->" size="6" class="box6" maxlength="<!--{$smarty.const.STEXT_LEN}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}-->></td> 
    142                 <!--{assign var=key value="stock:`$smarty.section.cnt.iteration`"}--> 
    143                 <!--{assign var=chkkey value="stock_unlimited:`$smarty.section.cnt.iteration`"}--> 
    144                 <td class="center"> 
    145                     <input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key]}-->" size="6" class="box6" maxlength="<!--{$smarty.const.AMOUNT_LEN}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}-->> 
    146                     <!--{assign var=key value="stock_unlimited:`$smarty.section.cnt.iteration`"}--><br /> 
    147                     <input type="checkbox" name="<!--{$key}-->" value="1" <!--{if $arrForm[$key] == "1"}-->checked<!--{/if}--> onClick="fnCheckStockNoLimit('<!--{$smarty.section.cnt.iteration}-->','<!--{$smarty.const.DISABLED_RGB}-->');"/>無制限 
    148                 </td> 
    149                 <!--{assign var=key value="price01:`$smarty.section.cnt.iteration`"}--> 
    150                 <td class="center"><input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key]}-->" size="6" class="box6" maxlength="<!--{$smarty.const.PRICE_LEN}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}-->></td> 
    151                 <!--{assign var=key value="price02:`$smarty.section.cnt.iteration`"}--> 
    152                 <td class="center"><input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key]}-->" size="6" class="box6" maxlength="<!--{$smarty.const.PRICE_LEN}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}-->></td> 
     167                    <!--{assign var=key value="classcategory_id1"}--> 
     168                    <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> 
     169                    <!--{assign var=key value="classcategory_id2"}--> 
     170                    <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> 
     171                    <!--{assign var=key value="product_class_id"}--> 
     172                    <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> 
     173                    <!--{assign var=key value="check"}--> 
     174                    <input type="checkbox" name="<!--{$key}-->[<!--{$index}-->]" value="1" <!--{if $arrForm[$key].value[$index] == 1}-->checked="checked"<!--{/if}--> /> 
     175                </td> 
     176                <td class="center"> 
     177                    <!--{assign var=key value="classcategory_name1"}--> 
     178                    <!--{$arrForm[$key].value[$index]|h}--> 
     179                    <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> 
     180                </td> 
     181                <td class="center"> 
     182                    <!--{assign var=key value="classcategory_name2"}--> 
     183                    <!--{$arrForm[$key].value[$index]|h}--> 
     184                    <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> 
     185                </td> 
     186                <td class="center"> 
     187                    <!--{assign var=key value="product_code"}--> 
     188                    <input type="text" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" size="6" class="box6" maxlength="<!--{$arrForm[$key].length}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /> 
     189                </td> 
     190                <td class="center"> 
     191                    <!--{assign var=key value="stock"}--> 
     192                    <input type="text" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" size="6" class="box6" maxlength="<!--{$arrForm[$key].length}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> id="<!--{$key}-->_<!--{$index}-->" /> 
     193                    <!--{assign var=key value="stock_unlimited"}--><br /> 
     194                    <input type="checkbox" name="<!--{$key}-->[<!--{$index}-->]" value="1" <!--{if $arrForm[$key].value[$index] == "1"}-->checked="checked"<!--{/if}--> onClick="fnCheckStockNoLimit('<!--{$index}-->','<!--{$smarty.const.DISABLED_RGB}-->');" id="<!--{$key}-->_<!--{$index}-->" /><label for="<!--{$key}-->_<!--{$index}-->">無制限</label> 
     195                </td> 
     196                <td class="center"> 
     197                    <!--{assign var=key value="price01"}--> 
     198                    <input type="text" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" size="6" class="box6" maxlength="<!--{$arrForm[$key].length}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /> 
     199                </td> 
     200                <td class="center"> 
     201                    <!--{assign var=key value="price02"}--> 
     202                    <input type="text" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" size="6" class="box6" maxlength="<!--{$arrForm[$key].length}-->" <!--{if $arrErr[$key] != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /> 
     203                </td> 
    153204                <td class="class-product-type"> 
    154                     <!--{assign var=key value="product_type_id:`$smarty.section.cnt.iteration`"}--> 
    155                     <!--{html_radios name=$key options=$arrProductType selected=$arrForm[$key] separator='<br />'}--> 
    156                 </td> 
    157                 <td class="center"> 
    158                     <!--{assign var=key value="down_filename:`$smarty.section.cnt.iteration`"}--> 
     205                    <!--{assign var=key value="product_type_id"}--> 
     206                    <!--{html_radios name="`$key`[`$index`]" options=$arrProductType selected=$arrForm[$key].value[$index]|h separator='<br />'}--> 
     207                </td> 
     208                <td class="center"> 
     209                    <!--{assign var=key value="down_filename}--> 
    159210                    <span class="attention"><!--{$arrErr[$key]}--></span> 
    160                     <input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key]|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" style="<!--{if $arrErr[$key] != ""}-->background-color: <!--{$smarty.const.ERR_COLOR}--><!--{/if}-->" size="10" /> 
    161                 </td> 
    162                 <!--{assign var=key value="down_realfilename:`$smarty.section.cnt.iteration`"}--> 
    163                 <td><span class="attention"><!--{$arrErr[$key]}--></span> 
    164                     <!--{if $arrForm[$key] != ""}--> 
    165                         <!--{$arrForm[$key]|h}--><input type="hidden" name="<!--{$key}-->" value="<!--{$arrForm[$key]|h}-->"> 
    166                         <a href="" onclick="fnFormModeSubmit('form1', 'delete_down', 'down_key', '<!--{$key}-->'); return false;">[ファイルの取り消し]</a><br> 
     211                    <input type="text" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{if $arrErr[$key] != ""}-->background-color: <!--{$smarty.const.ERR_COLOR}--><!--{/if}-->" size="10" /> 
     212                </td> 
     213                <td> 
     214                    <!--{assign var=key value="down_realfilename"}--> 
     215                    <span class="attention"><!--{$arrErr[$key]}--></span> 
     216                    <!--{if $arrForm[$key].value[$index] != ""}--> 
     217                        <!--{$arrForm[$key].value[$index]|h}--> 
     218                        <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> 
     219                        <a href="?" onclick="fnFormModeSubmit('form1', 'delete_down', 'down_key[<!--{$index}-->]', '<!--{$key}-->'); return false;">[ファイルの取り消し]</a><br /> 
    167220                    <!--{/if}--> 
    168                     <input type="file" name="<!--{$key}-->" size="10" style="<!--{$arrErr[$key]|sfGetErrorColor}-->" /><br /> 
    169                     <a class="btn-normal" href="javascript:;" name="btn" onclick="fnFormModeSubmit('form1', 'upload_down', 'down_key', '<!--{$key}-->'); return false;">アップロード</a> 
     221                    <input type="file" name="<!--{$key}-->[<!--{$index}-->]" size="10" style="<!--{$arrErr[$key]|sfGetErrorColor}-->" /><br /> 
     222                    <a class="btn-normal" href="javascript:;" name="btn" onclick="fnFormModeSubmit('form1', 'upload_down', 'down_key', '<!--{$key}-->[<!--{$index}-->]'); return false;">アップロード</a> 
    170223                </td> 
    171224            </tr> 
  • branches/version-2_5-dev/data/Smarty/templates/admin/products/product_class_confirm.tpl

    r20514 r20595  
    2424<h2>確認</h2> 
    2525<form name="form1" id="form1" method="post" action="?" enctype="multipart/form-data"> 
     26<input type="hidden" name="mode" value="" /> 
    2627<input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    27 <!--{foreach key=key item=item from=$arrForm}--> 
    28     <input type="hidden" name="<!--{$key}-->" value="<!--{$item|h}-->" /> 
     28<!--{foreach key=key item=items from=$arrForm}--> 
     29    <!--{if is_array($items.value)}--> 
     30        <!--{foreach key=index item=item from=$items.value}--> 
     31            <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$item|h}-->" /> 
     32        <!--{/foreach}--> 
     33    <!--{else}--> 
     34        <input type="hidden" name="<!--{$key}-->" value="<!--{$items.value|h}-->" /> 
     35    <!--{/if}--> 
    2936<!--{/foreach}--> 
    3037 
    31 <!--{foreach key=key item=item from=$arrHidden}--> 
    32     <input type="hidden" name="<!--{$key}-->" value="<!--{$item|h}-->" /> 
     38<!--{* TODO 不要? *}--> 
     39<!--{foreach key=key item=items from=$arrSearchHidden}--> 
     40    <!--{if is_array($items.value)}--> 
     41        <!--{foreach key=index item=item from=$items.value}--> 
     42            <input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$item|h}-->" /> 
     43        <!--{/foreach}--> 
     44    <!--{else}--> 
     45        <input type="hidden" name="<!--{$key}-->" value="<!--{$items|h}-->" /> 
     46    <!--{/if}--> 
    3347<!--{/foreach}--> 
     48 
    3449<div id="products" class="contents-main"> 
    3550 
    36     <!--{if $tpl_check > 0}--> 
     51    <!--{if count($arrForm.check.value) > 0}--> 
     52        <!--{assign var=key1 value="class_id1"}--> 
     53        <!--{assign var=key2 value="class_id2"}--> 
     54        <!--{assign var=class_id1 value=$arrForm[$key1].value|h}--> 
     55        <!--{assign var=class_id2 value=$arrForm[$key2].value|h}--> 
    3756        <table class="list"> 
    38             <!--{assign var=class_id1 value=$arrForm.class_id1}--> 
    39             <!--{assign var=class_id2 value=$arrForm.class_id2}--> 
    40             <tr> 
    41                 <th>規格1(<!--{$arrClass[$class_id1]|default:"未選択"}-->)</th> 
    42                 <th>規格2(<!--{$arrClass[$class_id2]|default:"未選択"}-->)</th> 
     57                <tr> 
     58                <th>規格1(<!--{$arrClass[$class_id1]|default:"未選択"|h}-->)</th> 
     59                <th>規格2(<!--{$arrClass[$class_id2]|default:"未選択"|h}-->)</th> 
    4360                <th>商品コード</th> 
    4461                <th>在庫数</th> 
     
    4966                <th>ダウンロード商品用ファイルアップロード</th> 
    5067            </tr> 
    51             <!--{section name=cnt loop=$tpl_count}--> 
    52                 <!--{assign var=key value="check:`$smarty.section.cnt.iteration`"}--> 
    53                 <!--{if $arrForm[$key] == 1}--> 
     68            <!--{section name=cnt loop=$arrForm.total.value}--> 
     69                <!--{assign var=index value=$smarty.section.cnt.index}--> 
     70 
     71                <!--{if $arrForm.check.value[$index] == 1}--> 
    5472                    <tr> 
    55                         <!--{assign var=key value="name1:`$smarty.section.cnt.iteration`"}--> 
    56                         <td><!--{$arrForm[$key]}--></td> 
    57                         <!--{assign var=key value="name2:`$smarty.section.cnt.iteration`"}--> 
    58                         <td><!--{$arrForm[$key]}--></td> 
    59                         <!--{assign var=key value="product_code:`$smarty.section.cnt.iteration`"}--> 
    60                         <td><!--{$arrForm[$key]}--></td> 
    61                         <!--{assign var=key1 value="stock:`$smarty.section.cnt.iteration`"}--> 
    62                         <!--{assign var=key2 value="stock_unlimited:`$smarty.section.cnt.iteration`"}--> 
     73                        <!--{assign var=key value="classcategory_name1"}--> 
     74                        <td><!--{$arrForm[$key].value[$index]|h}--></td> 
     75                        <!--{assign var=key value="classcategory_name2"}--> 
     76                        <td><!--{$arrForm[$key].value[$index]|h}--></td> 
     77                        <!--{assign var=key value="product_code"}--> 
     78                        <td><!--{$arrForm[$key].value[$index]|h}--></td> 
     79                        <!--{assign var=key1 value="stock"}--> 
     80                        <!--{assign var=key2 value="stock_unlimited"}--> 
    6381                        <td class="right"> 
    64                             <!--{if $arrForm[$key2] == 1}--> 
     82                            <!--{if $arrForm[$key2].value[$index] == 1}--> 
    6583                                無制限 
    6684                            <!--{else}--> 
    67                                 <!--{$arrForm[$key1]}--> 
     85                                <!--{$arrForm[$key1].value[$index]|h}--> 
    6886                            <!--{/if}--> 
    6987                        </td> 
    70                         <!--{assign var=key value="price01:`$smarty.section.cnt.iteration`"}--> 
    71                         <td class="right"><!--{$arrForm[$key]}--></td> 
    72                         <!--{assign var=key value="price02:`$smarty.section.cnt.iteration`"}--> 
    73                         <td class="right"><!--{$arrForm[$key]}--></td> 
    74                         <!--{assign var=key value="product_type_id:`$smarty.section.cnt.iteration`"}--> 
     88                        <!--{assign var=key value="price01"}--> 
     89                        <td class="right"><!--{$arrForm[$key].value[$index]|h}--></td> 
     90                        <!--{assign var=key value="price02"}--> 
     91                        <td class="right"><!--{$arrForm[$key].value[$index]|h}--></td> 
     92                        <!--{assign var=key value="product_type_id"}--> 
    7593                        <td class="right"> 
    76                             <!--{foreach from=$arrForm[$key] item=product_type_id}--> 
     94                            <!--{foreach from=$arrForm[$key].value[$index] item=product_type_id}--> 
    7795                                <!--{$arrProductType[$product_type_id]|h}--> 
    7896                            <!--{/foreach}--> 
    7997                        </td> 
    80                         <!--{assign var=key value="down_filename:`$smarty.section.cnt.iteration`"}--> 
    81                         <td class="right"><!--{$arrForm[$key]}--></td> 
    82                         <!--{assign var=key value="down_realfilename:`$smarty.section.cnt.iteration`"}--> 
    83                         <td class="right"><!--{$arrForm[$key]}--></td> 
     98                        <!--{assign var=key value="down_filename"}--> 
     99                        <td class="right"><!--{$arrForm[$key].value[$index]}--></td> 
     100                        <!--{assign var=key value="down_realfilename"}--> 
     101                        <td class="right"><!--{$arrForm[$key].value[$index]}--></td> 
    84102                    </tr> 
    85103                <!--{/if}--> 
     
    93111        <ul> 
    94112            <li><a class="btn-action" href="javascript:;" onclick="fnFormModeSubmit('form1', 'confirm_return','',''); return false"><span class="btn-prev">前へ戻る</span></a></li> 
    95         <!--{if $tpl_check > 0}--> 
    96             <li><a class="btn-action" href="javascript:;" onclick="document.form1.submit(); return false;"><span class="btn-next">この内容で登録する</span></a></li> 
     113        <!--{if count($arrForm.check.value) > 0}--> 
     114            <li><a class="btn-action" href="javascript:;" onclick="fnFormModeSubmit('form1', 'complete','',''); return false;"><span class="btn-next">この内容で登録する</span></a></li> 
    97115        <!--{/if}--> 
    98116        </ul> 
  • branches/version-2_5-dev/data/class/SC_Product.php

    r20538 r20595  
    178178    function getDetail($productId) { 
    179179        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    180         $result = $objQuery->select("*", $this->alldtlSQL("product_id = ?"), 
     180        $result = $objQuery->select("*", $this->alldtlSQL("product_id = ? AND del_flg = 0"), 
    181181                                    "product_id = ?", 
    182182                                    array($productId, $productId)); 
     
    203203     * 
    204204     * @param array $arrProductId 商品ID の配列 
     205     * @param boolean $has_deleted 削除された商品規格も含む場合 true; 初期値 false 
    205206     * @return void 
    206207     */ 
    207     function setProductsClassByProductIds($arrProductId) { 
     208    function setProductsClassByProductIds($arrProductId, $has_deleted = false) { 
    208209 
    209210        $arrProductsClass = array(); 
    210211        foreach ($arrProductId as $productId) { 
    211             $arrProductClass = $this->getProductsClassFullByProductId($productId); 
     212            $arrProductClass = $this->getProductsClassFullByProductId($productId, $has_deleted); 
    212213 
    213214            $classCats1 = array(); 
     
    326327            T2.level, 
    327328            T3.name AS classcategory_name, 
     329            T3.rank, 
    328330            T4.name AS class_name, 
    329331            T4.class_id 
     
    338340                   ON T3.class_id = T4.class_id 
    339341__EOS__; 
     342 
     343        $objQuery->setOrder('T3.rank DESC'); // XXX 
    340344        $arrRet = $objQuery->select($col, $table, "", $params); 
    341345        $levels = array(); 
     
    358362                T1.level, 
    359363                T2.name AS classcategory_name, 
     364                T2.rank, 
    360365                T3.name AS class_name, 
    361366                T3.class_id 
     
    369374__EOS__; 
    370375 
     376            $objQuery->setOrder('T2.rank DESC'); // XXX 
    371377            $arrParents = $objQuery->select($col, $table, "", $parents); 
    372378 
    373             unset($parents); 
    374379            foreach ($arrParents as $rows) { 
    375380                $parents[] = $rows['parent_class_combination_id']; 
     
    396401            $arrProductsClass[] = $val; 
    397402        } 
    398  
    399403        return $arrProductsClass; 
    400404    } 
     
    402406    /** 
    403407     * 商品規格IDから商品規格を取得する. 
     408     * 
     409     * 削除された商品規格は取得しない. 
     410     * 
     411     * @param integer $productClassId 商品規格ID 
     412     * @return array 商品規格の配列 
    404413     */ 
    405414    function getProductsClass($productClassId) { 
    406415        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    407         $objQuery->setWhere('product_class_id = ?'); 
     416        $objQuery->setWhere('product_class_id = ? AND T1.del_flg = 0'); 
    408417        $objQuery->setOrder("T2.level DESC"); 
    409418        $results = $this->getProductsClassByQuery($objQuery, $productClassId); 
     
    416425     * 
    417426     * @param array $productIds 商品IDの配列 
     427     * @param boolean $has_deleted 削除された商品規格も含む場合 true; 初期値 false 
    418428     * @return array 商品規格の配列 
    419429     */ 
    420     function getProductsClassByProductIds($productIds = array()) { 
     430    function getProductsClassByProductIds($productIds = array(), $has_deleted = false) { 
    421431        if (empty($productIds)) { 
    422432            return array(); 
    423433        } 
    424434        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    425         $objQuery->setWhere('product_id IN (' . implode(', ', array_pad(array(), count($productIds), '?')) . ')'); 
     435        $where = 'product_id IN (' . implode(', ', array_pad(array(), count($productIds), '?')) . ')'; 
     436        if (!$has_deleted) { 
     437            $where .= ' AND T1.del_flg = 0'; 
     438        } 
     439        $objQuery->setWhere($where); 
    426440        $objQuery->setOrder("T2.level DESC"); 
    427441        return $this->getProductsClassByQuery($objQuery, $productIds); 
     
    443457     * 
    444458     * @param array $productId 商品ID 
     459     * @param boolean $has_deleted 削除された商品規格も含む場合 true; 初期値 false 
    445460     * @return array すべての組み合わせの商品規格の配列 
    446461     */ 
    447     function getProductsClassFullByProductId($productId) { 
    448         $results = $this->getProductsClassByProductIds(array($productId)); 
     462    function getProductsClassFullByProductId($productId, $has_deleted = false) { 
     463        $results = $this->getProductsClassByProductIds(array($productId), $has_deleted); 
    449464        return $this->getProductsClassFull($results); 
    450465    } 
  • branches/version-2_5-dev/data/class/helper/SC_Helper_DB.php

    r20541 r20595  
    14481448 
    14491449        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    1450         $where = 'product_id = ? AND class_combination_id IS NOT NULL'; 
     1450        $where = 'product_id = ? AND del_flg = 0 AND class_combination_id IS NOT NULL'; 
    14511451        $count = $objQuery->count('dtb_products_class', $where, array($product_id)); 
    14521452 
  • branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products.php

    r20538 r20595  
    378378        // 読み込む列とテーブルの指定 
    379379        $col = "product_id, name, main_list_image, status, product_code_min, product_code_max, price02_min, price02_max, stock_min, stock_max, stock_unlimited_min, stock_unlimited_max, update_date"; 
    380         $from = $objProduct->alldtlSQL(); 
     380        $from = $objProduct->alldtlSQL('del_flg = 0'); 
    381381 
    382382        $objQuery->setLimitOffset($limit, $offset); 
  • branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ClassCategory.php

    r20562 r20595  
    162162 
    163163        $where = "del_flg <> 1 AND class_id = ?"; 
    164         $objQuery->setOrder("rank DESC"); 
     164        $objQuery->setOrder("rank DESC"); // XXX 降順 
    165165        $arrClassCat = $objQuery->select("name, classcategory_id", "dtb_classcategory", $where, array($class_id)); 
    166166        return $arrClassCat; 
  • branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php

    r20538 r20595  
    5656        $masterData = new SC_DB_MasterData_Ex(); 
    5757        $this->arrProductType = $masterData->getMasterData("mtb_product_type"); 
     58        // 規格プルダウンのリスト 
     59        $this->arrClass = $this->getAllClass(); 
    5860    } 
    5961 
     
    7880        $this->initParam($objFormParam); 
    7981 
    80         // 規格行のPOSTパラメータを初期化 
    81         $count = $this->getRowMax($_POST); 
    82         $this->initRowParam($count, $objFormParam); 
    8382        $objFormParam->setParam($_POST); 
    8483        $objFormParam->convParam(); 
    8584 
    8685        $this->arrSearchHidden = $objFormParam->getSearchArray(); 
    87  
    88         $this->tpl_product_id = $objFormParam->getValue('product_id'); 
    89         $this->tpl_pageno = $objFormParam->getValue('pageno'); 
    9086 
    9187        // Downファイル管理クラスを初期化 
     
    9389        $this->initDownFile($count, $this->objDownFile); 
    9490 
    95         $this->arrForm = $objFormParam->getHashArray(); 
    96  
    9791        switch ($this->getMode()) { 
    9892 
     
    10094        case 'edit': 
    10195            // エラーチェック 
    102             $this->arrErr = $this->lfProductClassError($this->arrForm); 
     96            $this->arrErr = $this->lfProductClassError($objFormParam->getHashArray()); 
    10397            if (empty($this->arrErr)){ 
    10498                $this->tpl_mainpage = 'products/product_class_confirm.tpl'; 
    105                 $this->lfProductConfirmPage($this->arrForm); // 確認ページ表示 
     99                $this->doDisp($objFormParam); 
     100                $objFormParam->setParam($_POST); 
     101                $objFormParam->convParam(); 
     102 
    106103            } else { 
    107104                $this->doPreEdit($objFormParam->getValue('product_id'), false ,true); 
     105                /* TODO 
    108106                // Hiddenからのデータを引き継ぐ 
    109107                $this->objDownFile->setHiddenFileList($_POST); 
     
    112110                // Form用に配列を渡す。 
    113111                $this->arrForm = array_merge((array)$this->arrForm, (array)$this->objDownFile->getFormKikakuDownFile()); 
    114                 $this->doDisp($objFormParam->getValue('product_id'), 
    115                               $objFormParam->getValue('select_class_id1'), 
    116                               $objFormParam->getValue('select_class_id2')); 
     112                */ 
     113                $this->doDisp($objFormParam); 
     114                $objFormParam->setParam($_POST); 
     115                $objFormParam->convParam(); 
     116 
    117117            } 
    118118            break; 
     
    125125        // 初期表示 
    126126        case 'pre_edit': 
    127             $this->doPreEdit($objFormParam->getValue('product_id')); 
     127            $this->doPreEdit($objFormParam); 
     128            /* TODO 
    128129            // HIDDEN用に配列を渡す。 
    129130            $this->arrHidden = array_merge((array)$this->arrHidden, (array)$this->objDownFile->getHiddenFileList()); 
     131            */ 
    130132            break; 
    131133 
    132134        // 「表示する」ボタン押下時 
    133135        case 'disp': 
    134             $this->doDisp($objFormParam->getValue('product_id'), 
    135                           $objFormParam->getValue('select_class_id1'), 
    136                           $objFormParam->getValue('select_class_id2')); 
     136            $this->arrErr = $this->lfClassError(); 
     137            if (SC_Utils_Ex::isBlank($this->arrErr)) { 
     138                $this->doDisp($objFormParam); 
     139            } 
    137140            break; 
    138141 
    139142        // ダウンロード商品ファイルアップロード 
    140143        case 'upload_down': 
     144            /* TODO 
    141145            $product_id = $objFormParam->getValue('product_id'); 
    142146            $down_key   = $objFormParam->getValue('down_key'); 
     
    156160            $this->doDisp($product_id, 
    157161                          $objFormParam->getValue('select_class_id1'), 
    158                           $objFormParam->getValue('select_class_id2')); 
     162                          $objFormParam->getValue('select_class_id2'), $objFormParam); 
     163            */ 
    159164            break; 
    160165 
    161166        // ダウンロードファイルの削除 
    162167        case 'delete_down': 
     168            /* TODO 
    163169            $product_id = $objFormParam->getValue('product_id'); 
    164170            $down_key   = $objFormParam->getValue('down_key'); 
     
    176182            $this->doDisp($product_id, 
    177183                          $objFormParam->getValue('select_class_id1'), 
    178                           $objFormParam->getValue('select_class_id2')); 
     184                          $objFormParam->getValue('select_class_id2'), $objFormParam); 
     185            */ 
    179186            break; 
    180187 
    181188        // 確認画面からの戻り 
    182189        case 'confirm_return': 
    183             // 規格の選択情報は引き継がない。 
    184             $this->arrForm['select_class_id1'] = ""; 
    185             $this->arrForm['select_class_id2'] = ""; 
    186             $this->doPreEdit($objFormParam->getValue('product_id'), false, true); 
     190            $this->doPreEdit($objFormParam); 
     191            $objFormParam->setParam($_POST); 
     192            $objFormParam->convParam(); 
     193 
     194            /* TODO 
    187195            // Hiddenからのデータを引き継ぐ 
    188196            $this->objDownFile->setHiddenFileList($_POST); 
     
    191199            // Form用に配列を渡す。 
    192200            $this->arrForm = array_merge((array)$this->arrForm, (array)$this->objDownFile->getFormKikakuDownFile()); 
    193             $this->doDisp($objFormParam->getValue('product_id'), 
    194                           $objFormParam->getValue('select_class_id1'), 
    195                           $objFormParam->getValue('select_class_id2')); 
     201            */ 
     202 
    196203            break; 
    197204        case 'complete': 
     
    203210            // 商品規格の登録 
    204211            $arrList = $objFormParam->getHashArray(); 
    205             $this->registerProductClass($arrList, $objFormParam->getValue('product_id')); 
     212            $this->registerProductClass($arrList, $objFormParam->getValue('product_id'), 
     213                                        $objFormParam->getValue('total')); 
    206214            // 一時ファイルを本番ディレクトリに移動する 
    207215            $this->objDownFile->moveTempDownFile(); 
     
    211219        } 
    212220 
    213         // 規格プルダウンのリストを取得 
    214         $this->arrClass = $this->getAllClass(); 
    215221        // 登録対象の商品名を取得 
    216         $this->arrForm['product_name'] = $this->getProductName($objFormParam->getValue('product_id')); 
     222        $objFormParam->setValue('product_name', 
     223                $this->getProductName($objFormParam->getValue('product_id'))); 
     224        $this->arrForm = $objFormParam->getFormParamList(); 
    217225    } 
    218226 
     
    228236     * パラメータ初期化 
    229237     * 
    230      * @param <type> $objFormParam 
     238     * @param SC_FormParam $objFormParam SC_FormParam インスタンス 
     239     * @return void 
    231240     */ 
    232241    function initParam(&$objFormParam) { 
    233         $objFormParam->addParam(); 
    234242        // 商品マスタ検索パラメータ引き継ぎ 
    235243        $objFormParam->addParam("商品ID", "product_id", INT_LEN, 'n', array("NUM_CHECK", "MAX_LENGTH_CHECK")); 
     
    251259 
    252260        // 規格プルダウン 
    253         $objFormParam->addParam("規格1", "select_class_id1", null, null, array()); 
    254         $objFormParam->addParam("規格2", "select_class_id2", null, null, array()); 
    255         $objFormParam->addParam("規格1", "class_id1", null, null, array()); 
    256         $objFormParam->addParam("規格2", "class_id2", null, null, array()); 
    257  
    258         // ファイルアップロード用 
    259         $objFormParam->addParam("ファイルアップロード用キー", "down_key", null, null, array()); 
    260     } 
    261  
    262     /** 
    263      * 規格行ごとのパラメータを初期化する 
    264      * 
    265      * @param 行数 $count 
    266      * @param SC_FormParam $objFormParam 
    267      */ 
    268     function initRowParam($count, &$objFormParam) { 
    269         for ($i = 1; $i < $count; $i++) { 
    270             $objFormParam->addParam("規格ID1", "classcategory_id1:$i", null, null, array()); 
    271             $objFormParam->addParam("規格ID2", "classcategory_id2:$i", null, null, array()); 
    272             $objFormParam->addParam("規格名", "name1:$i", null, null, array()); 
    273             $objFormParam->addParam("企画名", "name2:$i", null, null, array()); 
    274             $objFormParam->addParam("product_class_id", "product_class_id:$i", null, null, array()); 
    275             $objFormParam->addParam("商品コード", "product_code:$i", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
    276             $objFormParam->addParam("在庫数", "stock:$i", AMOUNT_LEN, 'n', array("EXIST_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK")); 
    277             $objFormParam->addParam("在庫数", "stock_unlimited:$i", null, null, array()); 
    278             $objFormParam->addParam(NORMAL_PRICE_TITLE, "price01:$i", PRICE_LEN, 'n', array("NUM_CHECK", "MAX_LENGTH_CHECK")); 
    279             $objFormParam->addParam(SALE_PRICE_TITLE, "price02:$i", PRICE_LEN, 'n', array("EXIST_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK")); 
    280             $objFormParam->addParam("商品種別", "product_type_id:$i", null, null, array()); 
    281             $objFormParam->addParam("DLファイル名", "down_filename:$i", null, null, array()); 
    282             $objFormParam->addParam("DLファイル名", "down_realfilename:$i", null, null, array()); 
    283             $objFormParam->addParam("チェックボックス", "check:$i", null, null, array()); 
    284         } 
     261        $objFormParam->addParam("規格1", "select_class_id1", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     262        $objFormParam->addParam("規格2", "select_class_id2", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     263        $objFormParam->addParam("規格1", "class_id1", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     264        $objFormParam->addParam("規格2", "class_id2", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     265 
     266        // 商品規格 
     267        $objFormParam->addParam("商品規格数", "total", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     268        $objFormParam->addParam("商品名", "product_name", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
     269        $objFormParam->addParam("商品コード", "product_code", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
     270        $objFormParam->addParam("規格ID1", "classcategory_id1", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     271        $objFormParam->addParam("規格ID2", "classcategory_id2", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     272        $objFormParam->addParam("規格名1", "classcategory_name1", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
     273        $objFormParam->addParam("規格名2", "classcategory_name2", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
     274        $objFormParam->addParam("商品規格ID", "product_class_id", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     275        $objFormParam->addParam("在庫数", "stock", AMOUNT_LEN, 'n', array("EXIST_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK")); 
     276        $objFormParam->addParam("在庫数", "stock_unlimited", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     277        $objFormParam->addParam(NORMAL_PRICE_TITLE, "price01", PRICE_LEN, 'n', array("NUM_CHECK", "MAX_LENGTH_CHECK")); 
     278        $objFormParam->addParam(SALE_PRICE_TITLE, "price02", PRICE_LEN, 'n', array("EXIST_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK")); 
     279        $objFormParam->addParam("商品種別", "product_type_id", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     280        $objFormParam->addParam("削除フラグ", "del_flg", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     281        $objFormParam->addParam("DLファイル名", "down_filename", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
     282        $objFormParam->addParam("DLファイル名", "down_realfilename", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
     283        $objFormParam->addParam("チェックボックス", "check", INT_LEN, 'n', array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     284        $objFormParam->addParam("ファイルアップロード用キー", "down_key", STEXT_LEN, 'KVa', array("MAX_LENGTH_CHECK")); 
    285285    } 
    286286 
     
    299299 
    300300    /** 
    301      * 規格行の最大値を返す 
    302      * 
    303      * @param array $arrPost POSTパラメータ 
    304      * @return int 規格行の最大値 
    305      */ 
    306     function getRowMax($arrPost) { 
    307         $i = 1; 
    308         foreach ($arrPost as $key => $value) { 
    309             if ($key == "classcategory_id1:$i") { 
    310                 $i++; 
    311             } 
    312         } 
    313         return $i; 
    314     } 
    315  
    316     /** 
    317301     * 規格の登録または更新を行う. 
    318302     * 
     
    323307     * @param integer $product_id 登録を行う商品ID 
    324308     */ 
    325     function registerProductClass($arrList, $product_id) { 
     309    function registerProductClass($arrList, $product_id, $total) { 
    326310        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    327311        $objDb = new SC_Helper_DB_Ex(); 
     
    329313        $objQuery->begin(); 
    330314 
    331         $productsClass = $objQuery->select("*", "dtb_products_class", "product_id = ?", array($product_id)); 
    332  
    333         $exists = array(); 
    334         foreach ($productsClass as $val) { 
    335             $exists[$val['product_class_id']] = $val; 
    336         } 
    337         $i = 1; 
    338         while (!SC_Utils_Ex::isBlank($arrList['check:' . $i])) { 
    339             $pVal = array(); 
    340             $pVal['product_id'] = $product_id;; 
    341             $pVal['product_code'] = $arrList["product_code:".$i]; 
    342             $pVal['stock'] = $arrList["stock:".$i]; 
    343             $pVal['stock_unlimited'] = ($arrList["stock_unlimited:".$i]) ? '1' : '0'; 
    344             $pVal['price01'] = $arrList['price01:'.$i]; 
    345             $pVal['price02'] = $arrList['price02:'.$i]; 
    346             $pVal['product_type_id'] = $arrList['product_type_id:'.$i]; 
    347             $pVal['down_filename'] = $arrList['down_filename:'.$i]; 
    348             $pVal['down_realfilename'] = $arrList['down_realfilename:'.$i]; 
    349             $pVal['creator_id'] = $_SESSION['member_id']; 
    350             $pVal['update_date'] = "now()"; 
    351  
    352             if($arrList["check:".$i] == 1) { 
    353                 $pVal['del_flg'] = 0; 
    354             } else { 
    355                 $pVal['del_flg'] = 1; 
    356             } 
    357  
    358             // 更新 or 登録 
    359             $isUpdate = false; 
    360             if (!SC_Utils_Ex::isBlank($arrList["product_class_id:".$i])) { 
    361                 $isUpdate = true; 
     315        $arrProductsClass = $objQuery->select("*", "dtb_products_class", "product_id = ?", array($product_id)); 
     316        $arrExists = array(); 
     317        foreach ($arrProductsClass as $val) { 
     318            $arrExists[$val['product_class_id']] = $val; 
     319        } 
     320 
     321        // デフォルト値として設定する値を取得しておく 
     322        $arrDefault = $this->getProductsClass($product_id); 
     323 
     324        for ($i = 0; $i < $total; $i++) { 
     325            $del_flg = SC_Utils_Ex::isBlank($arrList['check'][$i]) ? 1 : 0; 
     326            $stock_unlimited = SC_Utils_Ex::isBlank($arrList['stock_unlimited'][$i]) ? 0 : 1; 
     327 
     328            // dtb_products_class 登録/更新用 
     329            $registerKeys = array('product_code', 'stock', 
     330                                  'price01', 'price02', 'product_type_id', 
     331                                  'down_filename', 'down_realfilename'); 
     332 
     333            $arrPC = array(); 
     334            foreach ($registerKeys as $key) { 
     335                $arrPC[$key] = $arrList[$key][$i]; 
     336            } 
     337            $arrPC['product_id'] = $product_id; 
     338            $arrPC['sale_limit'] = $arrDefault['sale_limit']; 
     339            $arrPC['deliv_fee'] = $arrDefault['deliv_fee']; 
     340            $arrPC['point_rate'] = $arrDefault['point_rate']; 
     341            $arrPC['stock_unlimited'] = $stock_unlimited; 
     342 
     343            // 該当関数が無いため, セッションの値を直接代入 
     344            $arrPC['creator_id'] = $_SESSION['member_id']; 
     345            $arrPC['update_date'] = 'now()'; 
     346            $arrPC['del_flg'] = $del_flg; 
     347 
     348            // 登録 or 更新 
     349            $is_update = false; 
     350            if (!SC_Utils_Ex::isBlank($arrList['product_class_id'][$i])) { 
     351                $is_update = true; 
     352 
    362353                // 更新の場合は規格組み合わせを検索し, 削除しておく 
    363                 $class_combination_id = $exists[$arrList["product_class_id:".$i]]['class_combination_id']; 
     354                $class_combination_id = $arrExists[$arrList['product_class_id'][$i]]['class_combination_id']; 
    364355                $existsCombi = $objQuery->getRow( 
    365                     "*", 
    366                     "dtb_class_combination", 
    367                     "class_combination_id = ?", 
    368                     array($class_combination_id) 
    369                 ); 
    370  
    371                 $objQuery->delete("dtb_class_combination", 
    372                                   "class_combination_id IN (?, ?)", 
     356                    '*', 
     357                    'dtb_class_combination', 
     358                    'class_combination_id = ?', 
     359                    array($class_combination_id)); 
     360 
     361                $objQuery->delete('dtb_class_combination', 
     362                                  'class_combination_id IN (?, ?)', 
    373363                                  array($existsCombi['class_combination_id'], 
    374364                                        $existsCombi['parent_class_combination_id'])); 
     
    376366 
    377367            // 規格組み合わせを登録 
    378             $cVal1['class_combination_id'] = $objQuery->nextVal('dtb_class_combination_class_combination_id'); 
    379  
    380             $cVal1['classcategory_id'] = $arrList["classcategory_id1:".$i]; 
    381             $cVal1['level'] = 1; 
    382             $objQuery->insert("dtb_class_combination", $cVal1); 
    383  
    384             $pVal['class_combination_id'] = $cVal1['class_combination_id']; 
     368            $arrComb1['class_combination_id'] = $objQuery->nextVal('dtb_class_combination_class_combination_id'); 
     369            $arrComb1['classcategory_id'] = $arrList['classcategory_id1'][$i]; 
     370            $arrComb1['level'] = 1; 
     371            $objQuery->insert('dtb_class_combination', $arrComb1); 
    385372 
    386373            // 規格2も登録する場合 
    387             if (!SC_Utils_Ex::isBlank($arrList["classcategory_id2:".$i])) { 
    388                 $cVal2['class_combination_id'] = $objQuery->nextVal('dtb_class_combination_class_combination_id'); 
    389                 $cVal2['classcategory_id'] = $arrList["classcategory_id2:".$i]; 
    390                 $cVal2['parent_class_combination_id'] = $cVal1['class_combination_id']; 
    391                 $cVal2['level'] = 2; 
    392                 $objQuery->insert("dtb_class_combination", $cVal2); 
    393  
    394                 $pVal['class_combination_id'] = $cVal2['class_combination_id']; 
     374            if (!SC_Utils_Ex::isBlank($arrList['classcategory_id2'][$i])) { 
     375                $arrComb2['class_combination_id'] = $objQuery->nextVal('dtb_class_combination_class_combination_id'); 
     376                $arrComb2['classcategory_id'] = $arrList['classcategory_id2'][$i]; 
     377                $arrComb2['parent_class_combination_id'] = $arrComb1['class_combination_id']; 
     378                $arrComb2['level'] = 2; 
     379                $objQuery->insert('dtb_class_combination', $arrComb2); 
     380 
     381                $arrPC['class_combination_id'] = $arrComb2['class_combination_id']; 
     382            } else { 
     383                $arrPC['class_combination_id'] = $arrComb1['class_combination_id']; 
    395384            } 
    396385 
    397386            // 更新 
    398             if ($isUpdate) { 
    399                 $pVal['product_class_id'] = $arrList["product_class_id:".$i]; 
    400                 $objQuery->update("dtb_products_class", $pVal, 
     387            if ($is_update) { 
     388                $arrPC['product_class_id'] = $arrList['product_class_id'][$i]; 
     389                $objQuery->update("dtb_products_class", $arrPC, 
    401390                                  "product_class_id = ?", 
    402                                   array($pVal['product_class_id'])); 
     391                                  array($arrPC['product_class_id'])); 
    403392            } 
    404393            // 新規登録 
    405394            else { 
    406                 $pVal['create_date'] = "now()"; 
    407                 $pVal['product_class_id'] = $objQuery->nextVal('dtb_products_class_product_class_id'); 
    408                 $objQuery->insert("dtb_products_class", $pVal); 
    409             } 
    410  
    411             $i++; 
     395                $arrPC['create_date'] = "now()"; 
     396                $arrPC['product_class_id'] = $objQuery->nextVal('dtb_products_class_product_class_id'); 
     397                $objQuery->insert("dtb_products_class", $arrPC); 
     398            } 
    412399        } 
    413400 
    414401        // 規格無し用の商品規格を非表示に 
    415         $bVal['del_flg'] = 1; 
    416         $bVal['update_date'] = 'now()'; 
    417         $objQuery->update("dtb_products_class", $bVal, 
    418                           "product_class_id = ? AND class_combination_id IS NULL", 
    419                           array($pVal['product_class_id'])); 
     402        $arrBlank['del_flg'] = 1; 
     403        $arrBlank['update_date'] = 'now()'; 
     404        $objQuery->update("dtb_products_class", $arrBlank, 
     405                          "product_id = ? AND class_combination_id IS NULL", 
     406                          array($product_id)); 
    420407 
    421408        // 件数カウントバッチ実行 
     
    491478 
    492479    /** 
    493      * 確認ページを表示する 
    494      * 
    495      */ 
    496     function lfProductConfirmPage($arrPost) { 
    497         $objDb = new SC_Helper_DB_Ex(); 
    498         $this->arrForm['mode'] = 'complete'; 
    499         $this->arrClass = $objDb->sfGetIDValueList("dtb_class", 'class_id', 'name'); 
    500         $cnt = 0; 
    501         $check = 0; 
    502         $no = 1; 
    503         while ($arrPost["classcategory_id1:".$no] != "") { 
    504             if ($arrPost["check:".$no] != "") { 
    505                 $check++; 
    506             } 
    507             $no++; 
    508             $cnt++; 
    509         } 
    510         $this->tpl_check = $check; 
    511         $this->tpl_count = $cnt; 
    512     } 
    513  
    514     /** 
    515480     * 規格の組み合わせ一覧を表示する. 
    516481     * 
    517      * 1. 規格1, 規格2を組み合わせた場合の妥当性を検証する. 
    518      * 2. 規格1, 規格2における規格分類のすべての組み合わせを取得し, 
    519      *    該当商品の商品規格の内容を取得し, フォームに設定する. 
    520      */ 
    521     function doDisp($product_id, $select_class_id1, $select_class_id2) { 
    522         $this->arrForm['select_class_id1'] = $select_class_id1; 
    523         $this->arrForm['select_class_id2'] = $select_class_id2; 
    524         $dispError = $this->lfClassError(); 
    525         if (SC_Utils_Ex::isBlank($dispError)) { 
    526             $this->arrClassCat = $this->getAllClassCategory($select_class_id1, $select_class_id2); 
    527             $productsClass = $this->getProductsClass($product_id); 
    528  
    529             $total = count($this->arrClassCat); 
    530             for ($i = 1; $i <= $total; $i++) { 
    531                 foreach ($productsClass as $key => $val) { 
    532                     $this->arrForm[$key . ":" . $i] = $val; 
    533                 } 
    534             } 
    535         } 
    536         $this->arrErr = array_merge((array) $this->arrErr, $dispError); 
    537         $this->tpl_onload.= "fnCheckAllStockLimit('$total', '" . DISABLED_RGB . "');"; 
     482     * 規格1, 規格2における規格分類のすべての組み合わせを取得し, 
     483     * 該当商品の商品規格の内容を取得後, フォームに設定する. 
     484     * 
     485     * @param SC_FormParam $objFormParam SC_FormParam インスタンス 
     486     * @return void 
     487     */ 
     488    function doDisp(&$objFormParam) { 
     489        $product_id = $objFormParam->getValue('product_id'); 
     490        $select_class_id1 = $objFormParam->getValue('select_class_id1'); 
     491        $select_class_id2 = $objFormParam->getValue('select_class_id2'); 
     492 
     493        // すべての組み合わせを取得し, フォームに設定 
     494        $arrClassCat = $this->getAllClassCategory($select_class_id1, $select_class_id2); 
     495        $total = count($arrClassCat); 
     496        $objFormParam->setValue('total', $total); 
     497        $objFormParam->setParam(SC_Utils_Ex::sfSwapArray($arrClassCat)); 
     498 
     499        // class_id1, class_id2 は select_class_id1 で上書き 
     500        $objFormParam->setValue('class_id1', $select_class_id1); 
     501        $objFormParam->setValue('class_id2', $select_class_id2); 
     502 
     503        // 商品情報を取得し, フォームに設定 
     504        $arrProductsClass = $this->getProductsClass($product_id); 
     505 
     506        foreach ($arrProductsClass as $key => $val) { 
     507            // 組み合わせ数分の値の配列を生成する 
     508            $arrValues = array(); 
     509            for ($i = 0; $i < $total; $i++) { 
     510                $arrValues[] = $val; 
     511            } 
     512            $objFormParam->setValue($key, $arrValues); 
     513        } 
    538514    } 
    539515 
     
    545521     * @param bool $usepostValue 
    546522     */ 
    547     function doPreEdit($product_id, $existsValue = true, $usepostValue = false) { 
     523    function doPreEdit(&$objFormParam) { 
     524        $product_id = $objFormParam->getValue('product_id'); 
    548525        $existsProductsClass = $this->getProductsClassAndClasscategory($product_id); 
    549         $productsClass = $this->getProductsClass($product_id); 
    550         $this->arrForm["class_id1"] = $existsProductsClass[0]['class_id1']; 
    551         $this->arrForm["class_id2"] = $existsProductsClass[0]['class_id2']; 
    552         $this->arrForm['select_class_id1'] = $this->arrForm["class_id1"]; 
    553         $this->arrForm['select_class_id2'] = $this->arrForm["class_id2"]; 
    554         $this->arrClassCat = $this->getAllClassCategory($this->arrForm["class_id1"], $this->arrForm["class_id2"]); 
    555  
    556         $total = count($this->arrClassCat); 
    557         $line  = ''; 
    558  
    559         for ($i = 0; $i < $total; $i++) { 
    560             $no = $i + 1; 
    561             if ($existsValue) { 
    562                 foreach ($productsClass as $key => $val) { 
    563                     if(!$usepostValue){ 
    564                         $this->arrForm[$key . ":" . $no] = $val; 
    565                     } 
    566                 } 
    567             } 
    568             foreach ($existsProductsClass[$i] as $key => $val) { 
    569                 if (!$usepostValue) { 
    570                     $this->arrForm[$key . ":" . $no] = $val; 
    571                 } 
    572                 switch ($key) { 
    573                 case 'down': 
    574                     $this->objDownFile->addFile("ダウンロード販売用ファイル". ":" . $no, 'down_realfilename'. ":" . $no, explode(",", DOWNLOAD_EXTENSION),DOWN_SIZE, true, 0, 0); 
    575                     break; 
    576                 default: 
    577                 } 
    578             } 
    579             if (!SC_Utils_Ex::isBlank($this->arrForm['product_id:' . $no]) 
    580                 && $this->arrForm["del_flg:" . $no] == 0) { 
    581                 $line .= "'check:" . $no . "',"; 
    582             } 
    583         } 
    584  
    585         $line = preg_replace("/,$/", "", $line); 
    586         $this->tpl_javascript = "list = new Array($line);"; 
    587         $color = DISABLED_RGB; 
    588         $this->tpl_onload.= "fnListCheck(list); fnCheckAllStockLimit('$total', '$color');"; 
     526 
     527        $class_id1 = $existsProductsClass[0]['class_id1']; 
     528        $class_id2 = $existsProductsClass[0]['class_id2']; 
     529        $objFormParam->setValue('class_id1', $class_id1); 
     530        $objFormParam->setValue('class_id2', $class_id2); 
     531        $objFormParam->setValue('select_class_id1', $class_id1); 
     532        $objFormParam->setValue('select_class_id2', $class_id2); 
     533        $this->doDisp($objFormParam); 
     534 
     535        // 登録済みのデータで上書き 
     536        $objFormParam->setParam(SC_Utils_Ex::sfSwapArray($existsProductsClass)); 
     537 
     538        // $existsProductsClass で product_id が配列になってしまうため数値で上書き 
     539        $objFormParam->setValue('product_id', $product_id); 
     540 
     541        // check を設定 
     542        $arrChecks = array(); 
     543        $index = 0; 
     544        foreach ($objFormParam->getValue('del_flg') as $key => $val) { 
     545            if ($val == 0) { 
     546                $arrChecks[$index] = 1; 
     547            } 
     548            $index++; 
     549        } 
     550        $objFormParam->setValue('check', $arrChecks); 
    589551 
    590552        // DBデータからダウンロードファイル名の読込 
     
    604566 
    605567        $objQuery->begin(); 
    606  
    607         $arrProductsClass = array(); 
    608         $arrProductsClass['del_flg'] = 0; 
    609         $objQuery->update("dtb_products_class", $arrProductsClass, "product_id = ? AND class_combination_id IS NULL", array($product_id)); 
    610  
    611         $arrProductsClass['del_flg'] = 1; 
    612         $objQuery->update("dtb_products_class", $arrProductsClass, "product_id = ? AND class_combination_id IS NOT NULL", array($product_id)); 
    613  
     568        $objQuery->update("dtb_products_class", array('del_flg' => 0), 
     569                          "product_id = ? AND class_combination_id IS NULL", array($product_id)); 
     570        $objQuery->update("dtb_products_class", array('del_flg' => 1), 
     571                          "product_id = ? AND class_combination_id IS NOT NULL", array($product_id)); 
    614572        $objQuery->commit(); 
    615573 
     
    634592        $col = "T1.class_id AS class_id1, " 
    635593            . " T1.classcategory_id AS classcategory_id1, " 
    636             . " T1.name AS name1, " 
     594            . " T1.name AS classcategory_name1, " 
    637595            . " T1.rank AS rank1 "; 
    638596 
     
    648606                . "T2.class_id AS class_id2," 
    649607                . "T2.classcategory_id AS classcategory_id2," 
    650                 . "T2.name AS name2," 
     608                . "T2.name AS classcategory_name2," 
    651609                . "T2.rank AS rank2"; 
    652610            $table = "dtb_classcategory AS T1, dtb_classcategory AS T2"; 
     
    667625    function getProductName($product_id) { 
    668626        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    669         return $objQuery->getOne("SELECT name FROM dtb_products WHERE product_id = ?", array($product_id)); 
     627        return $objQuery->get('name', 'dtb_products', 'product_id = ?', array($product_id)); 
    670628    } 
    671629 
     
    698656     */ 
    699657    function getAllClass() { 
    700         $objDb = new SC_Helper_DB_Ex(); 
    701         $arrClass = $objDb->sfGetIDValueList("dtb_class", 'class_id', 'name'); 
     658        $arrClass = SC_Helper_DB_Ex::sfGetIDValueList("dtb_class", 'class_id', 'name'); 
    702659 
    703660        // 規格分類が登録されていない規格は表示しないようにする。 
     
    716673 
    717674    /** 
    718      * 商品IDをキーにして, 商品規格を取得する. 
     675     * 商品IDをキーにして, 商品規格の初期値を取得する. 
     676     * 
     677     * 商品IDをキーにし, デフォルトに設定されている商品規格を取得する. 
    719678     * 
    720679     * @param integer $product_id 商品ID 
     
    723682    function getProductsClass($product_id) { 
    724683        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    725         $col = "product_id, product_code, price01, price02, stock,  stock_unlimited, point_rate"; 
    726         return $objQuery->getRow($col, "dtb_products_class", "product_id = ?", array($product_id)); 
     684        $col = "product_code, price01, price02, stock, stock_unlimited, sale_limit, deliv_fee, point_rate"; 
     685        return $objQuery->getRow($col, "dtb_products_class", "product_id = ? AND class_combination_id IS NULL", array($product_id)); 
    727686    } 
    728687 
     
    735694    function getProductsClassAndClasscategory($productId) { 
    736695        $objProduct = new SC_Product_Ex(); 
    737         return $objProduct->getProductsClassFullByProductId($productId); 
     696        return $objProduct->getProductsClassFullByProductId($productId, true); 
    738697    } 
    739698} 
  • branches/version-2_5-dev/data/class/pages/products/LC_Page_Products_List.php

    r20567 r20595  
    298298            $where = '0<>0'; 
    299299        } 
     300 
     301        $where .= ' AND del_flg = 0'; // 商品規格の削除フラグ 
    300302        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    301303        $objQuery->setWhere($where); 
  • branches/version-2_5-dev/html/install/sql/insert_data.sql

    r20592 r20595  
    611611INSERT INTO dtb_products (product_id, name, maker_id, status, comment1, comment2, comment3, comment4, comment5, comment6, note, main_list_comment, main_list_image, main_comment, main_image, main_large_image, sub_title1, sub_comment1, sub_image1, sub_large_image1, sub_title2, sub_comment2, sub_image2, sub_large_image2, sub_title3, sub_comment3, sub_image3, sub_large_image3, sub_title4, sub_comment4, sub_image4, sub_large_image4, sub_title5, sub_comment5, sub_image5, sub_large_image5, sub_title6, sub_comment6, sub_image6, sub_large_image6, del_flg, creator_id, create_date, update_date, deliv_date_id) VALUES (3, 'おなべレシピ', NULL, 1, NULL, NULL, '鍋,なべ,ナベ,レシピ,作り方', NULL, NULL, NULL, NULL, 'あの、秘伝のお鍋レシピです。', 'recipe130.jpg', '自分でチャレンジしてみたい方に。', 'recipe260.jpg', 'recipe500.jpg', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1); 
    612612 
     613INSERT INTO dtb_products_class (product_class_id, product_id, class_combination_id, product_code, stock, stock_unlimited, sale_limit, price01, price02, deliv_fee, point_rate, creator_id, create_date, update_date, del_flg, product_type_id, down_filename, down_realfilename) VALUES(0, 1, NULL, 'ice-01', NULL, 1, NULL, 1000, 933, NULL, 10, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 0, 1, NULL, NULL); 
    613614INSERT INTO dtb_products_class (product_class_id, product_id, class_combination_id, product_code, stock, stock_unlimited, sale_limit, price01, price02, deliv_fee, point_rate, creator_id, create_date, update_date, del_flg, product_type_id, down_filename, down_realfilename) VALUES(1, 1, 10, 'ice-01', NULL, 1, NULL, 1000, 933, NULL, 10, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 0, 1, NULL, NULL); 
    614615INSERT INTO dtb_products_class (product_class_id, product_id, class_combination_id, product_code, stock, stock_unlimited, sale_limit, price01, price02, deliv_fee, point_rate, creator_id, create_date, update_date, del_flg, product_type_id, down_filename, down_realfilename) VALUES(2, 1, 11, 'ice-02', NULL, 1, NULL, 1000, 933, NULL, 10, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 0, 1, NULL, NULL); 
  • branches/version-2_5-dev/html/user_data/packages/admin/js/admin.js

    r20566 r20595  
    243243} 
    244244 
    245 // 在庫数制限判定 
    246 function fnCheckStockNoLimit(no, icolor) { 
    247     $check_key = "stock_unlimited:"+no; 
    248     $input_key = "stock:"+no; 
    249  
    250     list = new Array($input_key ); 
    251     if(document.form1[$check_key].checked) { 
    252         fnChangeDisabled(list, icolor); 
    253         document.form1[$input_key].value = ""; 
    254     } else { 
    255         fnChangeDisabled(list, ''); 
    256     } 
    257 } 
    258  
    259 // 在庫数判定 
    260 function fnCheckAllStockLimit(max, icolor) { 
    261     for(no = 1; no <= max; no++) { 
    262         $check_key = "stock_unlimited:"+no; 
    263         $input_key = "stock:"+no; 
    264  
    265         list = new Array($input_key); 
    266  
    267         if(document.form1[$check_key].checked) { 
    268             fnChangeDisabled(list, icolor); 
    269             document.form1[$input_key].value = ""; 
    270         } else { 
    271             fnChangeDisabled(list, ''); 
    272         } 
    273     } 
    274 } 
    275  
    276245// Form指定のSubmit 
    277246function fnFormSubmit(form) { 
Note: See TracChangeset for help on using the changeset viewer.