バージョン選択

フォーラム

メニュー

オンライン状況

67 人のユーザが現在オンラインです。 (63 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 67
もっと...

サイト内検索

バグ報告 > 管理機能 > v2.12.5 規格2の初期値「選択してください」が表示されない

管理機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
sumida
投稿日時: 2013/10/4 18:45
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: v2.12.5 規格2の初期値「選択してください」が表示されない
原因:
規格2が '__unselected'(「選択してください」)の場合、javascriptの関数 fnCheckStock の処理が不正になっていました。
詳細:
productsClassCategoriesは、規格の一覧を保持した配列変数になっています。
'__unselected'の場合、'classcategory_id2'が未定義であったため、関数 fnCheckStock 内で、変数 classcat_id2 に、「選択してください」(form.classcategory_id2.valueの値)が代入されていました。
その結果

classcat2 = eccube.productsClassCategories[product_id][classcat_id1]['#選択してください' ];

という配列の参照になり、以降が動作不良になっていました。

対策:
(1) productsClassCategoriesの内容を追加
data/class/SC_Product.php

            $classCategories = array();
// added
            $classCategories['__unselected']['__unselected']['classcategory_id2'] = '__unselected';
// added
            $classCategories['__unselected']['__unselected']['name'] = '選択してください';
            $classCategories['__unselected']['__unselected']['product_class_id'] = $arrProductClasses[0]['product_class_id'];
            // 商品種別
            $classCategories['__unselected']['__unselected']['product_type'] = $arrProductClasses[0]['product_type_id'];


規格2への割当部分の処理追加
data/Smarty/templates/admin/order/product_select.tpl

    function fnCheckStock(form) {
        product_id = form.product_id.value;
        classcat_id1 = form.classcategory_id1.value;
        classcat_id2 = form.classcategory_id2 ? form.classcategory_id2.value : '';
// added_1
if (classcat_id2 == '__unselected') {
        classcat2 = eccube.productsClassCategories[product_id][classcat_id1][classcat_id2];
} else {
// added_1
        classcat2 = eccube.productsClassCategories[product_id][classcat_id1]['#' + classcat_id2];
// added_2
}
// added_2
        // 商品規格
        eleDynamic = document.getElementById('product_class_id' + product_id);

これでどうでしょう。

追記:
ショップ画面でも、同様の問題がありますが、
上記修正がなくても、動作しています。
(修正した方が良いと思います。)
v2.12.5
html/js/products.js(checkStock)
v2.13.0
html/js/eccube.js(eccube.checkStock)
です。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   v2.12.5 規格2の初期値「選択してください」が表示されない mayaa 2013/10/2 12:01
     Re: v2.12.5 規格2の初期値「選択してください」が表示されない sumida 2013/10/2 22:15
       Re: v2.12.5 規格2の初期値「選択してください」が表示されない sumida 2013/10/3 11:52
         Re: v2.12.5 規格2の初期値「選択してください」が表示されない sumida 2013/10/3 14:25
         » Re: v2.12.5 規格2の初期値「選択してください」が表示されない sumida 2013/10/4 18:45

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は93,427名です
総投稿数は111,050件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2315
5
umebius
2085
6
yuh
1851
7
h_tanaka
1756
8
red
1574
9
mcontact
1465
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.