source: branches/version-2_5-dev/html/user_data/packages/admin/js/admin.js @ 19755

Revision 19755, 11.0 KB checked in by nanasess, 13 years ago (diff)
  • #855(SC_Query の #select, #getRow, #getCol, #get, #min, #max の引数順を統一する)
    • 関数内部の SC_Query::get() を修正
  • #781 (規格のデータベースを木構造に)
    • 規格1のみの登録ができなかったのを修正
  • #382(管理画面XHTMLに変更)
    • チェックボックスの全選択を統一
  • #854(PHP4対応)
    • 構文修正
Line 
1/*
2 * This file is part of EC-CUBE
3 *
4 * Copyright(c) 2000-2010 LOCKON CO.,LTD. All Rights Reserved.
5 *
6 * http://www.lockon.co.jp/
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
21 */
22// 管理者メンバーを追加する。
23function fnRegistMember() {
24    // 必須項目の名前、ログインID、パスワード、権限
25    var lstitem = new Array();
26    lstitem[0] = 'name';
27    lstitem[1] = 'login_id';
28    lstitem[2] = 'password';
29    lstitem[3] = 'authority';
30
31    var max = lstitem.length;
32    var errflg = false;
33    var cnt = 0;
34
35    // 必須項目のチェック
36    for(cnt = 0; cnt < max; cnt++) {
37        if(document.form1[lstitem[cnt]].value == "") {
38            errflg = true;
39            break;
40        }
41    }
42
43    // 必須項目が入力されていない場合
44    if(errflg == true) {
45        alert('必須項目を入力して下さい。');
46        return false;
47    } else {
48        if(window.confirm('内容を登録しても宜しいでしょうか')){
49            return true;
50        } else {
51            return false;
52        }
53    }
54}
55
56//親ウィンドウのページを変更する。
57function fnUpdateParent(url) {
58    // 親ウィンドウの存在確認
59    if(fnIsopener()) {
60        window.opener.location.href = url;
61    } else {
62        window.close();
63    }
64}
65
66// 親ウィンドウをポストさせる。
67function fnSubmitParent() {
68    // 親ウィンドウの存在確認
69    if(fnIsopener()) {
70        window.opener.document.form1.submit();
71    } else {
72        window.close();
73    }
74}
75
76//指定されたidの削除を行うページを実行する。
77function fnDeleteMember(id, pageno) {
78    url = "./delete.php?id=" + id + "&pageno=" + pageno;
79    if(window.confirm('登録内容を削除しても宜しいでしょうか')){
80        location.href = url;
81    }
82}
83
84// ラジオボタンチェック状態を保存
85var lstsave = "";
86
87// ラジオボタンのチェック状態を取得する。
88function fnGetRadioChecked() {
89    var max;
90    var cnt;
91    var names = "";
92    var startname = "";
93    var ret;
94    max = document.form1.elements.length;
95    lstsave = Array(max);
96    for(cnt = 0; cnt < max; cnt++) {
97        if(document.form1.elements[cnt].type == 'radio') {
98            name = document.form1.elements[cnt].name;
99            /* radioボタンは同じ名前が2回続けて検出されるので、
100               最初の名前の検出であるかどうかの判定 */
101            // 1回目の検出
102            if(startname != name) {
103                startname = name;
104                ret = document.form1.elements[cnt].checked;
105                if(ret == true){
106                    // 稼働がチェックされている。
107                    lstsave[name] = 1;
108                }
109            // 2回目の検出
110            } else {
111                ret = document.form1.elements[cnt].checked;
112                if(ret == true){
113                    // 非稼働がチェックされている。
114                    lstsave[name] = 0;
115                }
116            }
117        }
118    }
119}
120
121// ラジオボタンに変更があったか判定する。
122function fnChangeRadio(name, no, id, pageno) {
123    // 最初の取得状態から変更ありの場合
124    if(lstsave[name] != no) {
125        // DB反映ページ実行
126        url = "./check.php?id=" + id + "&no=" + no + "&pageno=" + pageno;
127        location.href = url;
128    }
129}
130
131// 管理者メンバーページの切替
132function fnMemberPage(pageno) {
133    location.href = "?pageno=" + pageno;
134}
135
136// ページナビで使用する
137function fnNaviSearchPage(pageno, mode) {
138    document.form1['search_pageno'].value = pageno;
139    document.form1['mode'].value = mode;
140    document.form1.submit();
141}
142
143// ページナビで使用する(mode = search専用)
144function fnNaviSearchOnlyPage(pageno) {
145    document.form1['search_pageno'].value = pageno;
146    document.form1['mode'].value = 'search';
147    document.form1.submit();
148}
149
150// ページナビで使用する(form2)
151function fnNaviSearchPage2(pageno) {
152    document.form2['search_pageno'].value = pageno;
153    document.form2['mode'].value = 'search';
154    document.form2.submit();
155}
156
157// 値を代入して指定ページにsubmit
158function fnSetvalAndSubmit( fname, key, val ) {
159    fm = document[fname];
160    fm[key].value = val;
161    fm.submit();
162}
163
164// 項目に入った値をクリアする。
165function fnClearText(name) {
166    document.form1[name].value = "";
167}
168
169// カテゴリの追加
170function fnAddCat(cat_id) {
171    if(window.confirm('カテゴリを登録しても宜しいでしょうか')){
172        document.form1['mode'].value = 'edit';
173        document.form1['cat_id'].value = cat_id;
174    }
175}
176
177// カテゴリの編集
178function fnEditCat(parent_id, cat_id) {
179    document.form1['mode'].value = 'pre_edit';
180    document.form1['parent_id'].value = parent_id;
181    document.form1['edit_cat_id'].value = cat_id;
182    document.form1.submit();
183}
184
185// 選択カテゴリのチェック
186function fnCheckCat(obj) {
187    val = obj[obj.selectedIndex].value;
188    if (val == ""){
189        alert ("親カテゴリは選択できません");
190        obj.selectedIndex = 0;
191    }
192}
193
194// 確認ページから登録ページへ戻る
195function fnReturnPage() {
196    document.form1['mode'].value = 'return';
197    document.form1.submit();
198}
199
200// 規格分類登録へ移動
201function fnClassCatPage(class_id) {
202    location.href =  "./classcategory.php?class_id=" + class_id;
203}
204
205function fnSetFormValue(name, val) {
206    document.form1[name].value = val;
207}
208
209function fnListCheck(list) {
210    len = list.length;
211    for(cnt = 0; cnt < len; cnt++) {
212        document.form1[list[cnt]].checked = true;
213    }
214}
215
216function fnAllCheck(input, selector) {
217    if ($(input).attr('checked')) {
218        $(selector).attr('checked', true);
219    } else {
220        $(selector).attr('checked', false);
221    }
222}
223
224//指定されたidの削除を行うページを実行する。
225function fnDelete(url) {
226    if(window.confirm('登録内容を削除しても宜しいでしょうか')){
227        location.href = url;
228        return false;
229    }
230}
231
232//配送料金を自動入力
233function fnSetDelivFee(max) {
234    for(cnt = 1; cnt <= max; cnt++) {
235        name = "fee" + cnt;
236        document.form1[name].value = document.form1['fee_all'].value;
237    }
238}
239
240// 在庫数制限判定
241function fnCheckStockLimit(icolor) {
242    if(document.form1['stock_unlimited']) {
243        list = new Array(
244            'stock'
245            );
246        if(document.form1['stock_unlimited'].checked) {
247            fnChangeDisabled(list, icolor);
248            document.form1['stock'].value = "";
249        } else {
250            fnChangeDisabled(list, '');
251        }
252    }
253}
254
255// 在庫数制限判定
256function fnCheckStockNoLimit(no, icolor) {
257    $check_key = "stock_unlimited:"+no;
258    $input_key = "stock:"+no;
259
260    list = new Array($input_key );
261    if(document.form1[$check_key].checked) {
262        fnChangeDisabled(list, icolor);
263        document.form1[$input_key].value = "";
264    } else {
265        fnChangeDisabled(list, '');
266    }
267}
268
269// 在庫数判定
270function fnCheckAllStockLimit(max, icolor) {
271    for(no = 1; no <= max; no++) {
272        $check_key = "stock_unlimited:"+no;
273        $input_key = "stock:"+no;
274
275        list = new Array($input_key);
276
277        if(document.form1[$check_key].checked) {
278            fnChangeDisabled(list, icolor);
279            document.form1[$input_key].value = "";
280        } else {
281            fnChangeDisabled(list, '');
282        }
283    }
284}
285
286// Form指定のSubmit
287function fnFormSubmit(form) {
288    document.forms[form].submit();
289}
290
291// 確認メッセージ
292function fnConfirm() {
293    if(window.confirm('この内容で登録しても宜しいでしょうか')){
294        return true;
295    }
296    return false;
297}
298
299//削除確認メッセージ
300function fnDeleteConfirm() {
301    if(window.confirm('削除しても宜しいでしょうか')){
302        return true;
303    }
304    return false;
305}
306
307//メルマガ形式変更確認メッセージ
308function fnmerumagaupdateConfirm() {
309    if(window.confirm("既に登録されているメールアドレスです。\nメルマガの種類が変更されます。宜しいですか?")){
310        return true;
311    }
312    return false;
313}
314
315// フォームに代入してからサブミットする。
316function fnInsertValAndSubmit( fm, ele, val, msg ){
317
318    if ( msg ){
319        ret = window.confirm(msg);
320    } else {
321        ret = true;
322    }
323    if( ret ){
324        fm[ele].value = val;
325        fm.submit();
326        return false;
327    }
328    return false;
329}
330
331// 自分以外の要素を有効・無効にする
332function fnSetDisabled ( f_name, e_name, flag ) {
333    fm = document[f_name];
334
335    // 必須項目のチェック
336    for(cnt = 0; cnt < fm.elements.length; cnt++) {
337        if( fm[cnt].name != e_name && fm[cnt].name != 'subm' && fm[cnt].name != 'mode') {
338            fm[cnt].disabled = flag;
339            if ( flag == true ){
340                fm[cnt].style.backgroundColor = "#cccccc";
341            } else {
342                fm[cnt].style.backgroundColor = "#ffffff";
343            }
344        }
345    }
346}
347
348
349//リストボックス内の項目を移動する
350function fnMoveCat(sel1, sel2, mode_name) {
351    var fm = document.form1;
352    for(i = 0; i < fm[sel1].length; i++) {
353        if(fm[sel1].options[i].selected) {
354            if(fm[sel2].value != "") {
355                fm[sel2].value += "-" + fm[sel1].options[i].value;
356            } else {
357                fm[sel2].value = fm[sel1].options[i].value;
358            }
359        }
360    }
361    fm["mode"].value = mode_name;
362    fm.submit();
363}
364
365//リストボックス内の項目を削除する
366function fnDelListContents(sel1, sel2, mode_name) {
367    fm = document.form1;
368    for(j = 0; j < fm[sel1].length; j++) {
369        if(fm[sel1].options[i].selected) {
370            fm[sel2].value = fm[sel2].value.replace(fm[sel1].options[i].value, "");
371        }
372    }
373
374    fm["mode"].value = mode_name;
375    fm.submit();
376}
377
378//一行目の価格を以下の行にコピーする
379function fnCopyValue(length, icolor) {
380    fm = document.form1;
381    for(i = 1; i <= length; i++) {
382        fm['product_code:' + i].value = fm['product_code:1'].value;
383        fm['stock:' + i].value = fm['stock:1'].value;
384        fm['price01:' + i].value = fm['price01:1'].value;
385        fm['price02:' + i].value = fm['price02:1'].value;
386        fm['stock_unlimited:' + i].checked = fm['stock_unlimited:1'].checked;
387        fm['stock:' + i].disabled = fm['stock:1'].disabled;
388        fm['stock:' + i].style.backgroundColor = fm['stock:1'].style.backgroundColor;
389    }
390}
391
392// タグの表示非表示切り替え
393function fnDispChange(disp_id, inner_id, disp_flg){
394    disp_state = document.getElementById(disp_id).style.display;
395
396    if (disp_state == "") {
397        document.form1[disp_flg].value="none";
398        document.getElementById(disp_id).style.display="none";
399        document.getElementById(inner_id).innerHTML = '<FONT Color="#FFFF99"> << 表示 </FONT>';
400    }else{
401        document.form1[disp_flg].value="";
402        document.getElementById(disp_id).style.display="";
403        document.getElementById(inner_id).innerHTML = ' <FONT Color="#FFFF99"> >> 非表示 </FONT>';
404    }
405}
406
407// ページ読み込み時の処理
408$(function(){
409// ヘッダナビゲーション
410    $("#navi li").hover(
411        function(){
412            $(this).addClass("sfhover");
413        },
414        function(){
415            $(this).removeClass("sfhover");
416        }
417    );
418});
419//制限数判定
420function fnCheckLimit(elem1, elem2, icolor) {
421    if(document.form1[elem2]) {
422        list = new Array(
423                elem1
424            );
425        if(document.form1[elem2].checked) {
426            fnChangeDisabled(list, icolor);
427            document.form1[elem1].value = "";
428        } else {
429            fnChangeDisabled(list, '');
430        }
431    }
432}
Note: See TracBrowser for help on using the repository browser.