﻿//画面側ロジック

//数字チェック
function FigureCheck(InputNo, Digit, Errobject) {

        re = new RegExp("\\d{" + Digit + ",}", "i");
        if (InputNo.search(re) != -1) {
            Errobject.style.visibility = "Hidden";
           } else {
            Errobject.style.visibility = "";
            window.event.returnValue = false;
          }
}
/*全角カナ変換*/
function ConvertZenkakuKana(inputEle) {

    if(!inputEle){return;}

    var validStr = inputEle.value;
    if(validStr.length==0){return;}


    if(!Array.prototype.contains) {
        Array.prototype.contains = function(value){
            for(var i in this){
                if( this.hasOwnProperty(i) && this[i] === value){
                    return true;
                }
            }

            return false;
        }
    }

    if(!Array.prototype.indexOf) {
        Array.prototype.indexOf = function(value){
            for(var i in this) {
                if(this.hasOwnProperty(i) && this[i] === value){return i;}
            }

            return -1;
        }
    }

    var convertkanaData = {
        "target" : [
            "あ","い","う","え","お","か","き","く","け","こ","さ","し","す","せ","そ","た","ち","つ","て","と","な","に","ぬ","ね","の",
            "は","ひ","ふ","へ","ほ","ま","み","む","め","も","や","ゆ","よ","ら","り","る","れ","ろ","わ","を","ん",
            "が","ぎ","ぐ","げ","ご","ざ","じ","ず","ぜ","ぞ","だ","ぢ","づ","で","ど","ば","び","ぶ","べ","ぼ","ぱ","ぴ","ぷ","ぺ","ぽ","ぁ","ぃ","ぅ","ぇ","ぉ","ゃ","ゅ","ょ",
            "ｱ","ｲ","ｳ","ｴ","ｵ","ｶ","ｷ","ｸ","ｹ","ｺ","ｻ","ｼ","ｽ","ｾ","ｿ","ﾀ","ﾁ","ﾂ","ﾃ","ﾄ","ﾅ","ﾆ","ﾇ","ﾈ","ﾉ",
            "ﾊ","ﾋ","ﾌ","ﾍ","ﾎ","ﾏ","ﾐ","ﾑ","ﾒ","ﾓ","ﾔ","ﾕ","ﾖ","ﾗ","ﾘ","ﾙ","ﾚ","ﾛ","ﾜ","ｦ","ﾝ"," ",
            "ｶﾞ","ｷﾞ","ｸﾞ","ｹﾞ","ｺﾞ","ｻﾞ","ｼﾞ","ｽﾞ","ｾﾞ","ｿﾞ","ﾀﾞ","ﾁﾞ","ﾂﾞ","ﾃﾞ","ﾄﾞ","ﾊﾞ","ﾋﾞ","ﾌﾞ","ﾍﾞ","ﾎﾞ","ﾊﾟ","ﾋﾟ","ﾌﾟ","ﾍﾟ","ﾎﾟ","ｧ","ｨ","ｩ","ｪ","ｫ","ｬ","ｭ","ｮ","っ","ｯ","-"
        ],
        "converted" : [
            "ア","イ","ウ","エ","オ","カ","キ","ク","ケ","コ","サ","シ","ス","セ","ソ","タ","チ","ツ","テ","ト","ナ","ニ","ヌ","ネ","ノ",
            "ハ","ヒ","フ","ヘ","ホ","マ","ミ","ム","メ","モ","ヤ","ユ","ヨ","ラ","リ","ル","レ","ロ","ワ","ヲ","ン",
            "ガ","ギ","グ","ゲ","ゴ","ザ","ジ","ズ","ゼ","ゾ","ダ","ヂ","ヅ","デ","ド","バ","ビ","ブ","ベ","ボ","パ","ピ","プ","ペ","ポ","ァ","ィ","ゥ","ェ","ォ","ャ","ュ","ョ",
            "ア","イ","ウ","エ","オ","カ","キ","ク","ケ","コ","サ","シ","ス","セ","ソ","タ","チ","ツ","テ","ト","ナ","ニ","ヌ","ネ","ノ",
            "ハ","ヒ","フ","ヘ","ホ","マ","ミ","ム","メ","モ","ヤ","ユ","ヨ","ラ","リ","ル","レ","ロ","ワ","ヲ","ン","　",
            "ガ","ギ","グ","ゲ","ゴ","ザ","ジ","ズ","ゼ","ゾ","ダ","ヂ","ヅ","デ","ド","バ","ビ","ブ","ベ","ボ","パ","ピ","プ","ペ","ポ","ァ","ィ","ゥ","ェ","ォ","ャ","ュ","ョ","ッ","ッ","ー"
        ]
    };


    try {

        var inputString = '';
        var convdata    = convertkanaData["converted"];

        for(var i=0;i<validStr.length;i++) {

            var onechar = validStr.substring(i,i+1);
            if(convertkanaData["converted"].contains(onechar)) {
                inputString += onechar;
            }
            else if((validStr.length -1 > i+1) && (validStr.substring(i+1,i+2) == "ﾞ" || validStr.substring(i+1,i+2) == "ﾟ" )) {

                var secchar = validStr.substring(i+1,i+2);
                    inputString += convdata[convertkanaData["target"].indexOf(onechar + secchar)];
            } 
            else if (convertkanaData["target"].contains(onechar)) {
                    inputString += convdata[convertkanaData["target"].indexOf(onechar)];
                }
            }

            inputEle.value = inputString;

    }
        catch (err){
            inputEle.value = validStr;
    }
}
