source: branches/version-2_11-dev/data/Smarty/templates/admin/order/product_select.tpl @ 20980

Revision 20980, 10.6 KB checked in by habu, 10 years ago (diff)

fix #1359 注文管理画面の1つ目の受注商品の変更操作をすると、変更されずに受注商品追加になってしまう

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-smarty-template; charset=UTF-8
Line 
1<!--{*
2/*
3 * This file is part of EC-CUBE
4 *
5 * Copyright(c) 2000-2011 LOCKON CO.,LTD. All Rights Reserved.
6 *
7 * http://www.lockon.co.jp/
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version 2
12 * of the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22 */
23*}-->
24<!--{include file="`$smarty.const.TEMPLATE_ADMIN_REALDIR`admin_popup_header.tpl"}-->
25
26<script type="text/javascript">
27<!--
28self.moveTo(20,20);self.focus();
29
30function func_submit(product_id, class_name1, class_name2) {
31    var err_text = '';
32    var fm = window.opener.document.form1;
33    var fm1 = window.opener.document;
34    var class1 = "classcategory_id" + product_id + "_1";
35    var class2 = "classcategory_id" + product_id + "_2";
36
37    var class1_id = document.getElementById(class1).value;
38    var class2_id = document.getElementById(class2).value;
39    var product_class_id = document.getElementById("product_class_id" + product_id).value;
40    var opner_product_id = 'add_product_id';
41    var opner_product_class_id = 'add_product_class_id';
42    var tpl_no = '<!--{$tpl_no}-->';
43
44    if (tpl_no != '') {
45        opner_product_id = 'edit_product_id';
46        opner_product_class_id = 'edit_product_class_id';
47        fm1.getElementById("no").value = escape('<!--{$tpl_no}-->');
48    }
49    if (document.getElementById(class1).type == 'select-one' && class1_id == '') {
50        err_text = class_name1 + "を選択してください。\n";
51    }
52    if (document.getElementById(class2).type == 'select-one' && class2_id == '') {
53        err_text = err_text + class_name2 + "を選択してください。\n";
54    }
55    if (err_text != '') {
56        alert(err_text);
57        return false;
58    }
59
60    fm1.getElementById(opner_product_id).value = product_id;
61    fm1.getElementById(opner_product_class_id).value = product_class_id;
62
63    fm.mode.value = 'select_product_detail';
64    fm.anchor_key.value = 'order_products';
65    fm.submit();
66    window.close();
67
68    return true;
69}
70//-->
71</script>
72
73
74<script type="text/javascript">//<![CDATA[
75// 規格2に選択肢を割り当てる。
76function fnSetClassCategories(form, classcat_id2_selected) {
77    sele1 = form.classcategory_id1;
78    sele2 = form.classcategory_id2;
79    product_id = form.product_id.value;
80
81    if (sele1) {
82        if (sele2) {
83            // 規格2の選択肢をクリア
84            count = sele2.options.length;
85            for(i = count; i >= 0; i--) {
86                sele2.options[i] = null;
87            }
88
89            // 規格2に選択肢を割り当てる
90            classcats = productsClassCategories[product_id][sele1.value];
91            i = 0;
92            for (var classcat_id2_key in classcats) {
93                classcategory_id2 = classcats[classcat_id2_key].classcategory_id2;
94                sele2.options[i] = new Option(classcats[classcat_id2_key].name, classcategory_id2);
95                if (classcategory_id2 == classcat_id2_selected) {
96                    sele2.options[i].selected = true;
97                }
98                i++;
99            }
100        }
101        fnCheckStock(form);
102    }
103}
104
105function fnCheckStock(form) {
106    product_id = form.product_id.value;
107    classcat_id1 = form.classcategory_id1.value;
108    classcat_id2 = form.classcategory_id2 ? form.classcategory_id2.value : 0;
109    classcat2 = productsClassCategories[product_id][classcat_id1]['#' + classcat_id2];
110    // 商品規格
111    eleDynamic = document.getElementById('product_class_id' + product_id);
112    if (
113        classcat2
114        && typeof classcat2.product_class_id != 'undefined'
115        && String(classcat2.product_class_id).length >= 1
116    ) {
117        eleDynamic.value = classcat2.product_class_id;
118    } else {
119        eleDynamic.value = ''
120    }
121}
122//]]>
123</script>
124
125<!--▼検索フォーム-->
126<form name="form1" id="form1" method="post" action="?">
127<input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" />
128<input name="mode" type="hidden" value="search" />
129<input name="anchor_key" type="hidden" value="" />
130<input name="search_pageno" type="hidden" value="" />
131<input name="no" type="hidden" value="<!--{$tpl_no|h}-->" />
132<table class="form">
133    <colgroup width="20%">
134    <colgroup width="80%">
135    <tr>
136        <th>カテゴリ</th>
137        <td>
138            <select name="search_category_id">
139                <option value="" selected="selected">選択してください</option>
140                <!--{html_options options=$arrCatList selected=$arrForm.search_category_id}-->
141            </select>
142        </td>
143    </tr>
144    <tr>
145        <th>商品名</th>
146        <td><input type="text" name="search_name" value="<!--{$arrForm.search_name|h}-->" size="35" class="box35" /></td>
147    </tr>
148    <tr>
149        <th>商品コード</th>
150        <td><input type="text" name="search_product_code" value="<!--{$arrForm.search_product_code|h}-->" size="35" class="box35" /></td>
151    </tr>
152</table>
153<div class="btn-area">
154    <ul>
155        <li><a class="btn-action" href="javascript:;" onclick="fnFormModeSubmit('form1', 'search', '', ''); return false;"><span class="btn-next">検索を開始</span></a></li>
156    </ul>
157</div>
158</form>
159<!--▼検索結果表示-->
160<!--{if $tpl_linemax}-->
161    <p>
162        <!--{$tpl_linemax}-->件が該当しました。
163        <!--{$tpl_strnavi}-->
164    </p>
165
166    <!--▼検索後表示部分-->
167    <table class="list">
168    <colgroup width="20%">
169    <colgroup width="20%">
170    <colgroup width="50%">
171    <colgroup width="10%">
172        <tr>
173            <th class="image">商品画像</th>
174            <th class="id">商品コード</th>
175            <th class="name">商品名</th>
176            <th class="action">決定</th>
177        </tr>
178        <!--{section name=cnt loop=$arrProducts}-->
179            <!--{assign var=id value=$arrProducts[cnt].product_id}-->
180            <form name="product_form<!--{$id|h}-->" action="?" onsubmit="return false;">
181                <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" />
182                <!--▼商品<!--{$smarty.section.cnt.iteration}-->-->
183                <!--{assign var=status value="`$arrProducts[cnt].status`"}-->
184                <tr style="background:<!--{$arrPRODUCTSTATUS_COLOR[$status]}-->;">
185                    <td class="center">
186                        <img src="<!--{$smarty.const.ROOT_URLPATH}-->resize_image.php?image=<!--{$arrProducts[cnt].main_list_image|sfNoImageMainList|h}-->&width=65&height=65" alt="<!--{$arrRecommend[$recommend_no].name|h}-->" />
187                    </td>   
188                    <td>
189                        <!--{assign var=codemin value=`$arrProducts[cnt].product_code_min`}-->
190                        <!--{assign var=codemax value=`$arrProducts[cnt].product_code_max`}-->
191                        <!--{* 商品コード *}-->
192                        <!--{if $codemin != $codemax}-->
193                            <!--{$codemin|h}-->~<!--{$codemax|h}-->
194                        <!--{else}-->
195                            <!--{$codemin|h}-->
196                        <!--{/if}-->
197                    </td>
198                    <td>
199                        <!--{$arrProducts[cnt].name|h}-->
200
201                        <!--{assign var=class1 value=classcategory_id`$id`_1}-->
202                        <!--{assign var=class2 value=classcategory_id`$id`_2}-->
203                        <!--{if $tpl_classcat_find1[$id]}-->
204                        <dl>
205                            <dt><!--{$tpl_class_name1[$id]|h}-->:</dt>
206                            <dd>
207                                <select name="classcategory_id1" id="<!--{$class1}-->" style="<!--{$arrErr[$class1]|sfGetErrorColor}-->"    onchange="fnSetClassCategories(this.form);">
208                                    <!--{html_options options=$arrClassCat1[$id] selected=$arrForm[$class1]}-->
209                                </select>
210                                <!--{if $arrErr[$class1] != ""}-->
211                                <br /><span class="attention">※ <!--{$tpl_class_name1[$id]}-->を入力して下さい。</span>
212                                <!--{/if}-->
213                            </dd>
214                        </dl>
215                        <!--{else}-->
216                        <input type="hidden" name="<!--{$class1}-->" id="<!--{$class1}-->" value="" />
217                        <!--{/if}-->
218
219                        <!--{if $tpl_classcat_find2[$id]}-->
220                        <dl>
221                            <dt><!--{$tpl_class_name2[$id]|h}-->:</dt>
222                            <dd>
223                                <select name="classcategory_id2" id="<!--{$class2}-->" style="<!--{$arrErr[$class2]|sfGetErrorColor}-->" onchange="fnCheckStock(this.form);"></select>
224                                <!--{if $arrErr[$class2] != ""}-->
225                                <br /><span class="attention">※ <!--{$tpl_class_name2[$id]}-->を入力して下さい。</span>
226                                <!--{/if}-->
227                            </dd>
228                        </dl>
229                        <!--{else}-->
230                        <input type="hidden" name="<!--{$class2}-->" id="<!--{$class2}-->" value="" />
231                        <!--{/if}-->
232                        <input type="hidden" name="product_id" value="<!--{$id|h}-->" />
233                        <input type="hidden" name="product_class_id<!--{$id|h}-->" id="product_class_id<!--{$id|h}-->" value="<!--{$tpl_product_class_id[$id]}-->" />
234                        <input type="hidden" name="product_type" id="product_type<!--{$id|h}-->" value="<!--{$tpl_product_type[$id]}-->" />
235                    </td>
236                    <td class="center"><a href="javascript:;" onclick="return func_submit('<!--{$arrProducts[cnt].product_id}-->', '<!--{$tpl_class_name1[$id]}-->', '<!--{$tpl_class_name2[$id]}-->'); return false;">決定</a></td>
237                </tr>
238                <!--▲商品<!--{$smarty.section.cnt.iteration}-->-->
239            </form>
240        <!--{sectionelse}-->
241            <tr>
242                <td colspan="4">商品が登録されていません</td>
243            </tr>
244        <!--{/section}-->
245    </table>
246<!--{/if}-->
247<!--▲検索結果表示-->
248
249
250<!--{include file="`$smarty.const.TEMPLATE_ADMIN_REALDIR`admin_popup_footer.tpl"}-->
Note: See TracBrowser for help on using the repository browser.