﻿function checkDate(Str,form){
	var temp = Str;
	var darray = new Array();
	darray = temp.split("-");
	if(darray.length != 3){
		return false;
	}else{
		var Ystr = darray[0];
		var Mstr = darray[1];
		var Dstr = darray[2];
		var flag = checkNum(Ystr,Mstr,Dstr);
		if(!flag){
			return false;
		}else{
          /*  if(Mstr.length==1&&Dstr.length==2) 
            {
                Mstr = "0"+Mstr; 
                form.toTime.value = Ystr+"-"+Mstr+"-"+Dstr; 
             }
            if(Dstr.length==1&&Mstr.length==2) 
            {
              Dstr = "0"+Dstr; 
              form.toTime.value = Ystr+"-"+Mstr+"-"+Dstr; }
            if(Mstr.length==1&&Dstr.length==1) 
            {
             Mstr = "0"+Mstr;
             Dstr = "0"+Dstr;
             var str = Ystr+"-"+Mstr+"-"+Dstr;
             form.toTime.value = str;
            }*/
                 
			if((Ystr.length != 4) || (Mstr.length != 2) || (Dstr.length != 2)){
				return false;
			}
			if(!((Mstr >= 1) && (Mstr <= 12) && (Dstr >= 1) && (Dstr <= 31))){
				return false;
			}
			if(!((Ystr % 4) == 0) && (Mstr == 2) && (Dstr == 29)){
				return false;
			}
			if((Mstr <= 7) && ((Mstr % 2) == 0) && (Dstr >= 31)){
				return false;
			}
			if((Mstr >= 8) && ((Mstr % 2) == 1) && (Dstr >= 31)){
				return false;
			}
			if((Mstr == 2) && (Dstr == 30)){
				return false;
			}
			return true;
		}
	}
}


function check(Str)
{
   var temp = Str;
	var darray = new Array();
	darray = temp.split("-");
		var Ystr = darray[0];
		var Mstr = darray[1];
		var Dstr = darray[2];
		var flag = checkNum(Ystr,Mstr,Dstr);
 		var str = "";
            //if(Mstr.length==1) {Mstr = "0"+Mstr; document.form.toTime.value = Ystr+"-"+Mstr+"-"+Dstr; }
            //if(Dstr.length==1) {Dstr = "0"+Dstr; document.form.toTime.value = Ystr+"-"+Mstr+"-"+Dstr; }
            if(Mstr.length==1&&Dstr.length==1) 
            {
             Mstr = "0"+Mstr;
             Dstr = "0"+Dstr;
             var str = Ystr+"-"+Mstr+"-"+Dstr;
             form.toTime.value = str;
            } 
              
            return str; 

}



function checkNum(Ystr,Mstr,Dstr){
	var source = "0123456789";
	var ch;
	var i;
	var temp;
	for(i=0;i<Ystr.length;i++){
		ch = Ystr.charAt(i);
		temp = source.indexOf(ch);
		if(temp == -1){
			return false;
		}
	}
	
	for(i=0;i<Mstr.length;i++){
		ch = Mstr.charAt(i);
		temp = source.indexOf(ch);
		if(temp == -1){
			return false;
		}
	}
	
	for(i=0;i<Dstr.length;i++){
		ch = Dstr.charAt(i);
		temp = source.indexOf(ch);
		if(temp == -1){
			return false;
		}
	}
	return true;
}

function checkRegParam1(form)
{
	/*if(form.chgfamilyname.value=="")
	{
		alert("中国語で名字をご入力ください。");
		form.chgfamilyname.focus();
		return false;		
	}
	else if(form.chgivename.value=="")
	{
		alert("中国語でお名前をご入力ください。");
		form.chgivename.focus();
		return false;		
	}
	else*/ if(form.engfamilyname.value=="")
	{
		alert("ローマ字で名字をご入力ください。");
		form.engfamilyname.focus();
		return false;		
	}
    else if(!isEnglish(form.engfamilyname.value))
    {
         alert("名字（ローマ字/ピンイン）のところにローマ字/ピンインをご入力ください。");
         form.engfamilyname.focus();
         return false;   
    }
	else if(form.engivename.value=="")
	{
		alert("ローマ字でお名前をご入力ください。");
		form.engivename.focus();
		return false;
	}
     else if(!isEnglish(form.engivename.value))
   {
        alert("お名前（ローマ字/ピンイン）のところにローマ字/ピンインをご入力ください。");
        form.engivename.focus();
        return false;
 
   }
	else if(form.identityno.value=="")
	{
		alert("パスポート番号をご入力ください。");
		form.identityno.focus();
		return false;
	}

    else if(form.identitytype.value=="ID")
	{
	var len=form.identityno.value.length;
	if(len!=15&&len!=18)
	{
		alert("パスポート番号の桁数が間違っています。");
		form.identityno.focus();
		return false;
	}
	}
	 
     if(!checkDate(form.toTime.value,form))
	{
		alert("例のように生年月日を正しくご入力ください。");
		form.toTime.focus();
		return false;
	}else{
			var adultcard = document.getElementById("adultcard");
			var adultcardpwd = document.getElementById("adultcardpwd");
		   if(adultcard && adultcardpwd){
			adultcard = adultcard.value;
			adultcardpwd = adultcardpwd.value;
			if(adultcard==""){
				alert("「イースタンマイル」会員カード番号ご入力ください。");
				document.getElementById("adultcard").focus();
				return false;
			}
			if(adultcardpwd==""){
				alert("大人「イースタンマイル」会員カードのパスワードをご入力ください。");
				document.getElementById("adultcardpwd").focus();
				return false;
			}
			
			if(!(/^\d*$/.test(adultcard))){
					alert('「イースタンマイル」会員カード番号フォーマットが間違っています。');
					document.getElementById("adultcard").focus();
					return false;
			}
		   }


	if(form.orgpwd.value=="")
	{
		alert("パスワードをご入力ください。");
		form.orgpwd.focus();
		return false;
	}
	else if(form.rptpwd.value=="")
	{
		alert("再度パスワードをご入力ください。");
		form.rptpwd.focus();
		return false;
	}
	else if(form.hintquestion.value=="")
	{
		alert("秘密質問をご入力ください。");
		form.hintquestion.focus();
		return false;
	}
	else if(form.hintanswer.value=="")
	{
		alert("秘密質問の答えをご入力ください。");
		form.hintanswer.focus();
		return false;
	}
	else if(form.orgpwd.value!=form.rptpwd.value)
	{
		alert("ご入力になったパスワードが確認用パスワードと違います。");
		form.orgpwd.focus();
		return false;
	}
	/*else if(form.beneficiary.value=="B")
	{
		if(form.beneficiary1.value=="" && form.beneficiary2.value=="" && form.beneficiary3.value=="" && form.beneficiary4.value=="" && form.beneficiary5.value=="") 	
		{
			alert("受取人をご入力ください。");
			form.beneficiary1.focus();
			return false;
		}	
	} 
	*/else if(funIsNum(form.orgpwd.value)==2)
	{
		alert("パスワード桁数が4～8桁でなければなりません。");
		form.orgpwd.focus();
		return false;
	}
	else if(funIsNum(form.orgpwd.value)==0)
	{
		alert("パスワードには、無効な記号があります。");
		form.orgpwd.focus();
		return false;
	}
	}

	return true;	
	
	

		
}
function checkRegParam2(form)
{
	
	var strEmail=form.email.value;
    if(strEmail!="")
{
	if(strEmail.indexOf("@")<0 || strEmail.indexOf(".")<0)
	{
		alert("メールアドレスのフォーマットが間違っています。");
		form.email.focus();
		return false;		
	}
}
	if(form.mailcountry.disabled== false && form.mailcountry.value=="")
	{
		alert("国をご入力ください。");
		form.mailcountry.focus();
		return false;		
	}
   else if(form.mailcountry.disabled== true && form.mailstate.value=="")
	{
		alert("州/省をご入力ください。");
		form.mailstate.focus();
		return false;		
	}		
	else if(form.mailcountry.disabled== true && form.mailcity.value=="")
	{
		alert("市/県/自治州をご入力ください。");
		form.mailcity.focus();
		return false;		
	}
	else if(form.mailcountry.disabled== true && form.mailzip.value=="")
	{
		alert("郵便番号をご入力ください。");
		form.mailzip.focus();
		return false;		
	}		
     else if(form.mailzip.disabled==false&&!zipIsNum(form.mailzip.value))	
    {
         alert("郵便番号6桁の数字をご入力ください。");
         form.mailzip.focus();
         return false;
   }
	
	else if(form.mailaddress1.value=="" && form.mailaddress2.value=="" && form.mailaddress3.value=="" )
	{
		alert("住所をご入力ください。");
		form.mailaddress1.focus();
		return false;		
	}	
	//else 
	//{
	//	return true;	
	//}	

//验证电话号码手机号码，包含153，158，159号段    
	if (form.personalphone.value=="" && form.mobile.value==""){    
	alert("電話番号、又は携帯電話番号をご入力下さい。（必須）");    
	form.personalphone.focus();    
	return false;    
	}  
  if(form.personalphone.value!="" && form.mobile.value==""){
  	form.mobile.value=form.personalphone.value;
  }
  if(form.mobile.value!="" && form.personalphone.value==""){
  	form.personalphone.value=form.mobile.value;
  }
  return true;
  /*if (form.personalphone.value != ""){ 
	var phone=form.personalphone.value;     
    if (isphone(phone)==0){    
	form.personalphone.value="";    
	alert("申し訳御座いません。ご入力になった電話番号が間違っています。");    
	form.personalphone.focus();    
	return false;    
	} 
	//var p1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/; 
    var reg0 = /^13\d{5,9}$/;    
	var reg1 = /^153\d{4,8}$/;    
	var reg2 = /^159\d{4,8}$/;     
    var reg3 = /^158\d{4,8}$/;    
	var me = false;    

    if (reg0.test(phone))me=true;    
	if (reg1.test(phone))me=true;    
	if (reg2.test(phone))me=true;    
    if (reg3.test(phone))me=true; 
    if(me)//如果电话输入为手机号码
    {
       if(form.mobile.value=="")
      {
          form.mobile.value=phone;
      }
    }

    return true;  
	}   
 
	if (form.mobile.value != ""){    
	var mobile=form.mobile.value;    
	var reg0 = /^13\d{5,9}$/;    
	var reg1 = /^153\d{4,8}$/;    
	var reg2 = /^159\d{4,8}$/;    
    var reg3 = /^158\d{4,8}$/; 
	var my = false;    
	if (reg0.test(mobile))my=true;    
	if (reg1.test(mobile))my=true;    
	if (reg2.test(mobile))my=true;    
    if (reg3.test(mobile))my=true;  
 
	if (!my){    
	form.mobile.value="";    
	alert("申し訳御座いません。ご入力された携帯電話番号が間違っています。");    
	form.mobile.focus();    
	return false;    
	}  
    if(form.personalphone.value=="")  
    {
     form.personalphone.value=mobile;
    }
	 return true;  
	}    */
}

function setWebUrl(form,strurl)

{

	form.action=strurl;

	if (checkRegParam2(form))

	{

		form.submit();	

	}

	else

	{

		return false;	

	}



}	

function isphone(zipcode) {
	var allowstrlist;

	allowstrlist="1234567890()-+ ";
	for (i=0;i<zipcode.length;i++) {
		if (allowstrlist.indexOf(zipcode.substr(i,1))==-1) {
        //说明有字符不符合限制
		return false;
		break;
		}
	}
    //说明符合限制
	return true;
}


function funIsNum1(NUM)
{
	var i,j,strTemp;
	strTemp="0123456789";
	if ( NUM.length== 0)
	{
		return 0;	
	}
	for (i=0;i<NUM.length;i++)
	{
		j=strTemp.indexOf(NUM.charAt(i));	
		if (j==-1)
		{
			return 0;
		}
	}
	return 1;
}
function funIsNum(NUM)

{

	var i,j,strTemp;

	strTemp="0123456789";

	if ( NUM.length== 0)

	{

		return 0;	

	}

	if ( NUM.length>= 4 && NUM.length<= 8)

	{}

	else

	{

		return 2;		

	}	

	for (i=0;i<NUM.length;i++)

	{

		j=strTemp.indexOf(NUM.charAt(i));	

		if (j==-1)

		{

		//说明有字符不是数字

			return 0;

		}

	}
	//说明是数字
	return 1;
}

function isEnglish(s) 
{ 
var patrn=/^[A-Za-z\s]+$/;    //????26???????????
if (!patrn.exec(s)) 
return false;

return true; 

}

function zipIsNum(s)
{
   var patrn=/^[0-9]{6}$/;    //????6?????????
   if(!patrn.exec(s))
   return false;
   return true;
}
function regnext1()
{
  document.getElementById("reg1").style.display = "none";
  document.getElementById("reg2").style.display = "block";
  //document.getElementById("reg3").style.display = "none";
}
function regnext2()
{
  document.getElementById("reg1").style.display = "none";
  document.getElementById("reg2").style.display = "none";
  //document.getElementById("reg3").style.display = "block";
}
function resetDiv(name){  
	var inputs,sels;
	var i=0;
	var focusEl=false;
	var radioName;
	inputs = document.getElementById(name).getElementsByTagName("input");
		for(;i<inputs.length;i++){
			if(i==0)
			 focusEl = inputs[i];
			if(inputs[i].type == 'text'){
				if(inputs[i].defaultValue)
					inputs[i].value = inputs[i].defaultValue;
				else
					inputs[i].value = "";
			}else if(inputs[i].type == 'radio'){
				if(!inputs[i].disabled && inputs[i].name != radioName){
					inputs[i].checked = true;
					inputs[i].click();	
					radioName = inputs[i].name;
				}else{
					inputs[i].checked = false;
				}
			}
		}
		sels = document.getElementById(name).getElementsByTagName("select");
		i=0;
		for(;i<sels.length;i++){
			if(i==0 && !focusEl)
				focusEl = sels[i]; 
			sels[i].selectedIndex = 0;
		} 
		
		if(focusEl){
			focusEl.focus();
		}
}
function resetForms(){
	if(document.getElementById("reg1").style.display != "none"){
		resetDiv("reg1");
		return ;
	}
	if(document.getElementById("reg2").style.display != "none"){
		resetDiv("reg2");
		return ;
	}
	if(document.getElementById("reg3").style.display != "none"){
		resetDiv("reg3");
		return ;
	}	
}
function nextStep(){
	if(document.getElementById("reg1").style.display != "none"){
		if(checkRegParam1(document.enrollform)){
			regnext1();
			resetForms();
		}
		return ;
	}
	if(document.getElementById("reg2").style.display != "none"){
		if(checkRegParam2(document.enrollform)){
		//	if(document.enrollform.adultcard){ 
			setNation();	
				document.enrollform.submit();
			//}else{
			//	regnext2();
			//	resetForms();
			//}
		}
		return ;
	}
	//if(document.getElementById("reg3").style.display != "none"){	
	//	setNation();
	//	document.enrollform.submit();
	//}
	
}
function setNation(){
	var vv = ""+document.getElementById("nationality").options[document.getElementById("nationality").selectedIndex].value + "-" + document.getElementById("nationality").options[document.getElementById("nationality").selectedIndex].text;
			document.getElementById("nationality").options[document.getElementById("nationality").selectedIndex].value = vv;
	
}
