/*
********************************************************************

【javaScript Infomation】

ver            : 1.0
Summary        : 読み込み無しで表示を切り替える（１ページ処理バージョン）
Last update    : 
Production day : 2009/03/30
Author         : Info-Works Inc.

********************************************************************
*/
//使用ユーザーのセット情報
var user_set = {
    id_name_head : 'memberCategory', //IDの頭文字
    select_flag : {  //使用フラグ配列(1が使用、0が未使用)
        japan   : 0, //日本語 (Aa-Wa)
        english : 1, //英語 (A-Z)
        number  : 0  //数字
    },
    max_number: '50' //数字使用時の最大添え字番号
};

//使用されているIDを格納
var jpnID_array = new Array();
var engID_array = new Array();
var numID_array = new Array();

//初期設定
function listSelectFirstSet() {
    //htmlの中に指定のID名が存在するかの判別
    var id_set = {
        textID  : function (tmp_array) {
                      var array_length = tmp_array.length;
                      var tmp_arrayT = new Array();
                      for (var i = 0; i<array_length ;i++) {
                          var tmpIdName = user_set.id_name_head + tmp_array[i];
                          if (document.getElementById(tmpIdName)) { //
                              tmp_arrayT.push(tmpIdName);
                          }
                      }
                      return tmp_arrayT;
                  },
        numberID: function (loopMax) {
                     var tmp_arrayN = new Array();
                     for (var j = 0; j<loopMax ;j++) {
                         var tmpIdName = user_set.id_name_head + j;
                         if (document.getElementById(tmpIdName)) {
                             tmp_arrayN.push(tmpIdName);
                         }
                     }
                     return tmp_arrayN;
                  }
    
    };
    //日本語準備
    if(user_set.select_flag.japan) {
        var japanease_array = ['Aa','Ka','Sa','Ta','Na','Ha','Ma','Ya','Ra','Wa'];
        jpnID_array = id_set.textID(japanease_array); //存在するIDを格納
    }
    //英語準備
    if(user_set.select_flag.english) {
        var english_array = ['A','B','C','D','E','F','G','H','I','J','K','L','M',
                             'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
        engID_array = id_set.textID(english_array); //存在するIDを格納
    }
    //数字準備
    if(user_set.select_flag.number) {
        numID_array = id_set.numberID(user_set.max_number); //存在するIDを格納
    }
    
    //使用済み変数消去
    delete user_set.select_flag;
}

//マウスクリック感知後の処理
function displayChangeSet(clickText) {
    //対応するidの有無
    if (document.getElementById(user_set.id_name_head + clickText)) {
        //同じものが押されたらお返し
        if (document.getElementById(user_set.id_name_head + clickText).style.display == 'block') { return false; }
    } else {
        return false;
    }
    
    //文字判別用
    var jpnMatch = /^(Aa)|(Ka)|(Sa)|(Ta)|(Na)|(Ha)|(Ma)|(Ya)|(Ra)|(Wa)/;
    var engMatch = /^[A-Z]/;
    var numMatch = /^\d/; //数字

    //クリックされた種類をマッチング
    if (jpnMatch.test(clickText)) { //日本語
        display_control(jpnID_array);
    } else if (engMatch.test(clickText)) { //英語用
        display_control(engID_array);
    } else if (typeof(clickText) == 'number' || numMatch.test(clickText)) { //数値用
        display_control(numID_array);
    }//css表示制御
    
    function display_control(tmp_array) {
        for (var i in tmp_array) {
             var idTmp = document.getElementById(tmp_array[i]);
             if ((user_set.id_name_head + clickText) == tmp_array[i]) {
                idTmp.style.display = 'block';
             } else {
                idTmp.style.display = 'none';
             }
        }
    }
}


/*---------------------------------------------------------------------

    イベントリスナー系

----------------------------------------------------------------------*/
if(window.addEventListener) {
    window.addEventListener("load", listSelectFirstSet, false);
} else if(window.attachEvent) {
    window.attachEvent("onload", listSelectFirstSet);
}

/* クリックのイベントを受け取る */
function listselectEventClick(clickText) {
    if (!document.getElementById) { return false; };
    displayChangeSet(clickText);
}





