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

Revision 18777, 11.1 KB checked in by eccuore, 14 years ago (diff)

#792(ダウンロード販売機能) 機能追加

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() {
217    cnt = 1;
218    name = "check:" + cnt;
219    while (document.form1[name]) {
220        document.form1[name].checked = true;
221        cnt++;
222        name = "check:" + cnt;
223    }
224}
225
226function fnAllUnCheck() {
227    cnt = 1;
228    name = "check:" + cnt;
229    while (document.form1[name]) {
230        document.form1[name].checked = false;
231        cnt++;
232        name = "check:" + cnt;
233    }
234}
235
236//指定されたidの削除を行うページを実行する。
237function fnDelete(url) {
238    if(window.confirm('登録内容を削除しても宜しいでしょうか')){
239        location.href = url;
240        return false;
241    }
242}
243
244//配送料金を自動入力
245function fnSetDelivFee(max) {
246    for(cnt = 1; cnt <= max; cnt++) {
247        name = "fee" + cnt;
248        document.form1[name].value = document.form1['fee_all'].value;
249    }
250}
251
252// 在庫数制限判定
253function fnCheckStockLimit(icolor) {
254    if(document.form1['stock_unlimited']) {
255        list = new Array(
256            'stock'
257            );
258        if(document.form1['stock_unlimited'].checked) {
259            fnChangeDisabled(list, icolor);
260            document.form1['stock'].value = "";
261        } else {
262            fnChangeDisabled(list, '');
263        }
264    }
265}
266
267// 在庫数制限判定
268function fnCheckStockNoLimit(no, icolor) {
269    $check_key = "stock_unlimited:"+no;
270    $input_key = "stock:"+no;
271
272    list = new Array($input_key );
273    if(document.form1[$check_key].checked) {
274        fnChangeDisabled(list, icolor);
275        document.form1[$input_key].value = "";
276    } else {
277        fnChangeDisabled(list, '');
278    }
279}
280
281// 在庫数判定
282function fnCheckAllStockLimit(max, icolor) {
283    for(no = 1; no <= max; no++) {
284        $check_key = "stock_unlimited:"+no;
285        $input_key = "stock:"+no;
286
287        list = new Array($input_key);
288
289        if(document.form1[$check_key].checked) {
290            fnChangeDisabled(list, icolor);
291            document.form1[$input_key].value = "";
292        } else {
293            fnChangeDisabled(list, '');
294        }
295    }
296}
297
298// Form指定のSubmit
299function fnFormSubmit(form) {
300    document.forms[form].submit();
301}
302
303// 確認メッセージ
304function fnConfirm() {
305    if(window.confirm('この内容で登録しても宜しいでしょうか')){
306        return true;
307    }
308    return false;
309}
310
311//削除確認メッセージ
312function fnDeleteConfirm() {
313    if(window.confirm('削除しても宜しいでしょうか')){
314        return true;
315    }
316    return false;
317}
318
319//メルマガ形式変更確認メッセージ
320function fnmerumagaupdateConfirm() {
321    if(window.confirm("既に登録されているメールアドレスです。\nメルマガの種類が変更されます。宜しいですか?")){
322        return true;
323    }
324    return false;
325}
326
327// フォームに代入してからサブミットする。
328function fnInsertValAndSubmit( fm, ele, val, msg ){
329
330    if ( msg ){
331        ret = window.confirm(msg);
332    } else {
333        ret = true;
334    }
335    if( ret ){
336        fm[ele].value = val;
337        fm.submit();
338        return false;
339    }
340    return false;
341}
342
343// 自分以外の要素を有効・無効にする
344function fnSetDisabled ( f_name, e_name, flag ) {
345    fm = document[f_name];
346
347    // 必須項目のチェック
348    for(cnt = 0; cnt < fm.elements.length; cnt++) {
349        if( fm[cnt].name != e_name && fm[cnt].name != 'subm' && fm[cnt].name != 'mode') {
350            fm[cnt].disabled = flag;
351            if ( flag == true ){
352                fm[cnt].style.backgroundColor = "#cccccc";
353            } else {
354                fm[cnt].style.backgroundColor = "#ffffff";
355            }
356        }
357    }
358}
359
360
361//リストボックス内の項目を移動する
362function fnMoveCat(sel1, sel2, mode_name) {
363    var fm = document.form1;
364    for(i = 0; i < fm[sel1].length; i++) {
365        if(fm[sel1].options[i].selected) {
366            if(fm[sel2].value != "") {
367                fm[sel2].value += "-" + fm[sel1].options[i].value;
368            } else {
369                fm[sel2].value = fm[sel1].options[i].value;
370            }
371        }
372    }
373    fm["mode"].value = mode_name;
374    fm.submit();
375}
376
377//リストボックス内の項目を削除する
378function fnDelListContents(sel1, sel2, mode_name) {
379    fm = document.form1;
380    for(j = 0; j < fm[sel1].length; j++) {
381        if(fm[sel1].options[i].selected) {
382            fm[sel2].value = fm[sel2].value.replace(fm[sel1].options[i].value, "");
383        }
384    }
385
386    fm["mode"].value = mode_name;
387    fm.submit();
388}
389
390//一行目の価格を以下の行にコピーする
391function fnCopyValue(length, icolor) {
392    fm = document.form1;
393    for(i = 1; i <= length; i++) {
394        fm['product_code:' + i].value = fm['product_code:1'].value;
395        fm['stock:' + i].value = fm['stock:1'].value;
396        fm['price01:' + i].value = fm['price01:1'].value;
397        fm['price02:' + i].value = fm['price02:1'].value;
398        fm['stock_unlimited:' + i].checked = fm['stock_unlimited:1'].checked;
399        fm['stock:' + i].disabled = fm['stock:1'].disabled;
400        fm['stock:' + i].style.backgroundColor = fm['stock:1'].style.backgroundColor;
401    }
402}
403
404// タグの表示非表示切り替え
405function fnDispChange(disp_id, inner_id, disp_flg){
406    disp_state = document.getElementById(disp_id).style.display;
407
408    if (disp_state == "") {
409        document.form1[disp_flg].value="none";
410        document.getElementById(disp_id).style.display="none";
411        document.getElementById(inner_id).innerHTML = '<FONT Color="#FFFF99"> << 表示 </FONT>';
412    }else{
413        document.form1[disp_flg].value="";
414        document.getElementById(disp_id).style.display="";
415        document.getElementById(inner_id).innerHTML = ' <FONT Color="#FFFF99"> >> 非表示 </FONT>';
416    }
417}
418
419// ページ読み込み時の処理
420$(function(){
421// ヘッダナビゲーション
422    $("#navi li").hover(
423        function(){
424            $(this).addClass("sfhover");
425        },
426        function(){
427            $(this).removeClass("sfhover");
428        }
429    );
430});
431//制限数判定
432function fnCheckLimit(elem1, elem2, icolor) {
433    if(document.form1[elem2]) {
434        list = new Array(
435                elem1
436            );
437        if(document.form1[elem2].checked) {
438            fnChangeDisabled(list, icolor);
439            document.form1[elem1].value = "";
440        } else {
441            fnChangeDisabled(list, '');
442        }
443    }
444}
Note: See TracBrowser for help on using the repository browser.