function Pcon()   <!-- 画面の始めのテキストボックスにフォーカスをあてる  -->
{
    var i,j;
    fcount = document.forms.length;
    for (i=0; i<fcount;i++)
    {
        ecount = document.forms[i].elements.length;
        for (j=0; j<ecount;j++)
        {
			if (document.forms[i].elements[j].type == "text")
			{
				document.forms[i].elements[j].focus();
					return;
			}
        }
   }
}

function OpenWin(addr)
{
	window.open( addr,'message',"toolbar=no,location=no,status=no,menubar=no,scrollbar=no,width=600,height=200");
}


function imeinact(txobj)
{
	txobj.style.imeMode="inactive";
}
function imeact(txobj)
{
	txobj.style.imeMode="active";
}

function subcon(form,name)  <!-- メイン実行関数  -->
{
    form.P_ACTION.value = name;

    if( !mainChk(form) )
    {
        return false;
    }
    return true;

}


function kDown()  <!-- エンターキー無効化  -->
{
    if ( event.keyCode == 13 )
    {
        alert("マウスでボタンをクリックしてください");
        return false;
    }
}
//window.document.onkeydown = kDown;


function mainChk(form)      <!--日付・時間・数値・文字・ブランクチェック関数 -->
{
	var i,j,k,flg;
    j = 0;
    while( form.elements[j] != null )
    {
        if( form.elements[j].id =="TIMECHK" )  <!-- 時・分チェック  -->
        {
            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
            {
                if( form.elements[j+1].value != "" &&  (form.elements[j+1].value.match(/[ 　]/)==null) )
                {
                    msgPut(form,1,j);
                    return false;
                }
            }
            else
            {
                if( form.elements[j+1].value == "" ||  form.elements[j+1].value.match(/[ 　]/) )
                {
                    msgPut(form,1,j+1);
                    return false;
                }
            }
            for( i = 0; i < 2; i++ )
            {
                if(!numChk(form,j+i))
                    return false;
                
                if( i == 0 )
                {
                    if( form.elements[j+i].value < 0 || form.elements[j+i].value > 23 )
                    {
                        msgPut(form,2,j+i);
                        return false;
                    }
                }
                else
                {
                    if( form.elements[j+i].value != 0 && form.elements[j+i].value != 30 )
                    {
                        msgPut(form,2,j+i);
                        return false;
                    }
                }
            }
        }
        else if( form.elements[j].id =="HOURCHK" )  <!-- 時チェック  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }
            else if( form.elements[j].value < 0 || form.elements[j].value > 24 )
            {
                msgPut(form,3,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK0" )  <!-- 数値チェック＋小数を拒否  -->
        {
            if( !numChk(form,j))
            {
                return false;
            }
            if( form.elements[j].value.match(/[.]/) != null) 
            {
                msgPut(form,0,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK1" )   <!-- 数値チェック＋整数部は一桁まで有効  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }   
            else if( Math.floor(eval(form.elements[j].value)) >= 10 )
            {
                msgPut(form,5,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK2" )   <!-- 数値チェック＋整数部は二桁まで有効  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }
            else if( Math.floor(eval(form.elements[j].value)) >= 100 )
            {
                msgPut(form,5,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK3" )   <!-- 数値チェック＋整数部は三桁まで有効  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }
            else if( Math.floor(eval(form.elements[j].value)) >= 1000 )
            {
                msgPut(form,5,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK4" )   <!-- 数値チェック＋整数部は四桁まで有効  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }
            else if( Math.floor(eval(form.elements[j].value)) >= 10000 )
            {
                msgPut(form,5,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK5" )   <!-- 数値チェック＋整数部は五桁まで有効  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }
            else if( Math.floor(eval(form.elements[j].value)) >= 100000 )
            {
                msgPut(form,5,j);
                return false;
            }
        }
        else if( form.elements[j].id =="NUMCHK6" )   <!-- 数値チェック＋整数部は六桁まで有効  -->
        {
            if(!numChk(form,j))
            {
                return false;
            }   
            else if( Math.floor(eval(form.elements[j].value)) >= 1000000 )
            {
                msgPut(form,5,j);
                return false;
            }
        }
        else if( form.elements[j].id == "DATECHK" )   <!-- 月、日チェックその１  -->
        {
            if( form.elements[j].value != "" || form.elements[j+1].value != "" || form.elements[j+2].value != "")
            {
                if( form.elements[j].value == "" || isNaN(form.elements[j].value) || form.elements[j].value.match(/[ 　]/) )
                {
                    msgPut(form,4,j);
                    return false;
                }
                else if( form.elements[j+1].value == "" || form.elements[j+1].value >= 13 || form.elements[j+1].value <= 0 || isNaN(form.elements[j+1].value) || form.elements[j].value.match(/[ 　]/) )
                {
                    msgPut(form,4,j+1);
                    return false;
                }
                else if( form.elements[j+2].value == "" || form.elements[j+2].value > 31 || form.elements[j+2].value <= 0 || isNaN(form.elements[j+2].value) || form.elements[j].value.match(/[ 　]/) )
                {
                    msgPut(form,4,j+2);
                    return false;
                }
            }
        }
        else if( form.elements[j].id == "DATECHKINS" )   <!-- 月、日チェックその２  -->
        {
            if( form.elements[j].value == "" && form.elements[j+1].value == "" && form.elements[j+2].value == "")
            {
                msgPut(form,10,j);
                return false;
            }
            else
            {
                if( form.elements[j].value == "" || isNaN(form.elements[j].value) || form.elements[j].value.match(/[ 　]/) )
                {
                    msgPut(form,4,j);
                    return false;
                }
                else if( form.elements[j+1].value == "" || form.elements[j+1].value >= 13 || form.elements[j+1].value <= 0 || isNaN(form.elements[j+1].value) || form.elements[j].value.match(/[ 　]/) )
                {
                    msgPut(form,4,j+1);
                    return false;
                }
                else if( form.elements[j+2].value == "" || form.elements[j+2].value > 31 || form.elements[j+2].value <= 0 || isNaN(form.elements[j+2].value) || form.elements[j].value.match(/[ 　]/) )
                {
                    msgPut(form,4,j+2);
                    return false;
                }
            }
        }
        else if( form.elements[j].id == "BLKCHK" )   <!-- ブランクチェック  -->
        {
            if( form.elements[j].value == ""  || form.elements[j].value.match(/[ 　]/))
            {
                msgPut(form,6,j);
                return false;
            }
        }
        else if( form.elements[j].id == "SCLCHK" )   <!-- ブランクチェック  -->
        {
            if(( form.elements[j].value == ""  || form.elements[j].value.match(/[ 　]/)) &&
               ( form.学歴.value != "大学入学資格検定" ))
            {
                msgPut(form,6,j);
                return false;
            }
        }
        else if( form.elements[j].id == "ADDRCHK" )   <!-- ブランクチェック  -->
        {
            if(( form.elements[j].value == ""  || form.elements[j].value.match(/[ 　]/)) &&
               ( form.ご案内の受取希望方式[1].checked ))
            {
                msgPut(form,6,j);
                return false;
            }
        }
        else if( form.elements[j].id == "ADDRPCHK" )   <!-- ブランクチェック  -->
        {
            if ( form.ご案内の受取希望方式[1].checked )
            {
	            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
	            {
	                msgPut(form,6,j);
	                return false;
	            }
	            else if( !telChk(form,j) )
	            {
	                return false;
	            }
            }
        }
        else if( form.elements[j].id == "MAILCHK" )   <!-- メールアドレスチェック  -->
        {
            if((form.elements[j].value != ""  ) &&
              ((form.elements[j].value.indexOf("@",0)<=0) ||
               (form.elements[j].value.indexOf(".",0)<=0)))
            {
	            msgPut(form,15,j);
	       		return false;
            }
        }
        else if( form.elements[j].id == "MAILCHK2" )   <!-- メール確認チェック  -->
        {
            if((form.elements[j-1].value != ""  ) && 
               (form.elements[j].value == ""  || form.elements[j].value.match(/[ 　]/)))
            {
                msgPut(form,6,j);
                return false;
            }
            else if((form.elements[j].value != ""  ) &&
                   ((form.elements[j].value.indexOf("@",0)<=0) ||
                     (form.elements[j].value.indexOf(".",0)<=0)))
            {
	            msgPut(form,15,j);
	       		return false;
            }
            else if (form.elements[j-1].value != form.elements[j].value)
            {
	            msgPut(form,16,j);
	       		return false;
            }
        }
        else if( form.elements[j].id == "BLKCHKA" )   <!-- ブランクチェックＡ  -->
        {
            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
            {
                msgPut(form,6,j);
                return false;
            }
            else if ((form.elements[j].value.indexOf("@",0)<=0) ||
            		(form.elements[j].value.indexOf(".",0)<=0))
            {
	            msgPut(form,15,j);
	       		return false;
            }
        }
        else if( form.elements[j].id == "BLKCHKA2" )   <!-- ブランクチェックＡ  -->
        {
            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
            {
                msgPut(form,6,j);
                return false;
            }
            else if ((form.elements[j].value.indexOf("@",0)<=0) ||
            		(form.elements[j].value.indexOf(".",0)<=0))
            {
	            msgPut(form,15,j);
	       		return false;
            }
            else if (form.elements[j-1].value != form.elements[j].value)
            {
	            msgPut(form,16,j);
	       		return false;
            }
        }
        else if( form.elements[j].id == "BLKCHKB" )   <!-- ブランクチェックＢ  -->
        {
            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
            {
                msgPut(form,6,j);
                return false;
            }
            else if( !telChk(form,j) )
            {
                return false;
            }
        }
        else if( form.elements[j].id == "TELCHK" )   <!-- 電話番号チェック  -->
        {
            if( !telChk(form,j) )
            {
                return false;
            }
        }
        else if( form.elements[j].id == "DBCHK" )   <!-- 全角チェック  -->
        {
            for(i=0 ; i < form.elements[j].value.length ; i++)
            {
                if ( ( escape(form.elements[j].value.charAt(i)).length >=4 ) &&
                     ( !form.elements[j].value.match(/[ｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾜﾝ]/) ) )
                {
                    msgPut(form,7,j);
                    return false;
                }
            }
        }
        else if( form.elements[j].id == "BLKDBCHK"  )   <!-- ブランク＋全角チェック  -->
        {
            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
            {
                msgPut(form,6,j);
                return false;
            }
            for(i=0 ; i < form.elements[j].value.length ; i++)
            {
                if ( ( escape(form.elements[j].value.charAt(i)).length < 4 ) ||
                     ( form.elements[j].value.match(/[ｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾜﾝ]/) ) )
                {
                    msgPut(form,7,j);
                    return false;
                }
            }
        }
        else if( form.elements[j].id == "BLKNUMCHK"  )   <!-- ブランク＋数字チェック  -->
        {
            if( form.elements[j].value != "" )
            {
	            if( !numChk(form,j))
	            {
	                return false;
	            }
	            if( form.elements[j].value.match(/[.]/) != null) 
	            {
	                msgPut(form,0,j);
	                return false;
	            }
            }
        }
        else if( form.elements[j].id == "BLKKANACHK"  )   <!-- ブランク＋ひらがな  -->
        {
            if( form.elements[j].value == "" || form.elements[j].value.match(/[ 　]/) )
            {
                msgPut(form,6,j);
                return false;
            }
            var checkStr = new String ("ーあいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわをんぁぃぅぇぉっゃゅょがぎぐげごだぢづでどばびぶべぼぱぴぷぺぽ");
			hiragana = form.elements[j].value.replace(/ /g,"");
    		if(hiragana.length == 0)
    		{
                msgPut(form,6,j);
        		return false;
		    }
		    for(i=0;i<hiragana.length;i++)
		    {
        		if(checkStr.indexOf(hiragana.charAt(i),0) == -1)
        		{
                    msgPut(form,13,j);
                    return false;
        		}
		    }
        }
        else if( form.elements[j].id == "MAXCHK"  )   <!-- 文字数オーバーチェック  -->
        {
            wLen = getLength(form.elements[j].value);
            if( form.elements[j].maxLength < wLen )
            {
                msgPut(form,11,j);
                return false;
            }
        }

        j++;
    }

    if(form.tempWork[0].checked)
    {
    	form.学年または卒業年.value = "卒業" + "西暦" + form.卒業年.value + "年";
    }
	else if (form.tempWork[1].checked)
    {
    	form.学年または卒業年.value = "在学中" + form.在学年.value + "年" + form.クラス.value + "クラス";
    }
	else
    {
    	form.学年または卒業年.value = "卒業予定" + "西暦" + form.卒業予定年.value + "年" + form.卒業予定月.value + "月";
    }
    return true;
}



function numChk(form,i) <!-- 数値チェック関数(mainChkに付随するもの)  -->
{
    if( isNaN(form.elements[i].value) )
    {
        msgPut(form,0,i);
        return false;
    }
    else if( eval(form.elements[i].value) < 0 )
    {
        msgPut(form,0,i);
        return false;
    }
    else
    {
        return true;
    }
}

function telChk(form,i) <!-- 電話番号チェック関数(mainChkに付随するもの)  -->
{
    var checkStr = new String ("0123456789-");
   	tel = form.elements[i].value.replace(/ /g,"");
	for(k=0;k<tel.length;k++)
	{
		if(checkStr.indexOf(tel.charAt(k),0) == -1)
		{
	        msgPut(form,14,i);
	   		return false;
       	}
   	}
    return true;

}


function msgPut(form,no,i)   <!-- メッセージ出力関数 -->
{
    switch (no)
    {
        case 0:
            alert("数字のみ入力可能です");
            break;
        case 1:
            alert("時・分の両方を入力してください！");
            break;
        case 2:
            alert("正しい時間を入力してください！");
            break;
        case 3:
            alert("正しい時間を入力してください！");
            break;
        case 4:
            alert("日付入力エラーです！");
            break;
        case 5:
            alert("数値が大きすぎます！");
            break;
        case 6:
            alert("必須項目です。ご記入お願いします");
            break;
        case 7:
            alert("全角のみ入力可能です！");
            break;
        case 8:
            alert("整数値を入力してください！");
            break;
        case 9:
            alert("メールアドレス又は電話番号を入力してください！");
            break;
        case 10:
            alert("日付は入力必須です！");
            break;
        case 11:
            alert("最大入力文字数をオーバーしています！");
            break;
        case 12:
            alert("どれかを選択してください");
            break;
        case 13:
            alert("ひらがなのみ入力可能です");
            break;
        case 14:
            alert("数字及びハイフンのみ入力可能です");
            break;
        case 15:
            alert("メールアドレスの形式が正しくありません");
            break;
        case 16:
            alert("メールアドレスと確認用アドレスが等しくありません");
            break;
    }

    form.elements[i].focus();
    if ( form.elements[i].type == "text" )
    {
        form.elements[i].select();
    }

}

function getLength(moji)   <!-- 文字数カウント関数 -->
{
    var i,cnt = 0;
    for(i=0; i<moji.length; i++)
    {
        if (escape(moji.charAt(i)).length >=4) {cnt += 2; } else {cnt++; }
    }
    return cnt;
}

