var c;
function judgeAccount(b){
	var account = document.getElementById("account").value;
	if(account==''){
		c = 'no';
		document.getElementById('n'+b).innerHTML='通行证账号不能为空！';
	}else{
		getUserAjax(account);
		if(accountresult[0]=='success'){
			c = 'no';
			document.getElementById('n'+b).innerHTML='此账号不存在！';
		}else{
			c = 'yes';
			document.getElementById('n'+b).innerHTML='填写正确，该账号存在！';
		}
	}
	show_msg(b);
}

function show_msg(b) {
	document.getElementById('m'+b).style.display="none";
	document.getElementById('n'+b).style.display="block";
	document.getElementById('n'+b).className=c;
}
function hidd_msg(b) {
	document.getElementById('m'+b).style.display="block";
	document.getElementById('n'+b).style.display="none";
}

function shenfenName(b){
	var userCardName = document.getElementById("userCardName").value;
	if(userCardName==''){
		c = 'no';
		document.getElementById('n'+b).innerHTML='身份证名不能为空！';
	}else if(ischinese(userCardName)){
		c = 'yes';
		document.getElementById('n'+b).innerHTML='身份证名格式正确！';
	}else{
		c = 'no';
		document.getElementById('n'+b).innerHTML='身份证名应该为中文！';
	}
	show_msg(b);
}

function shenfenId(b){
	var userCardId = document.getElementById("userCardId").value;
	if(userCardId==''){
		c = 'no';
		document.getElementById('n'+b).innerHTML='身份证号码不能为空！';
	}else if(isIdCardNo(userCardId)){
		c = 'yes';
		document.getElementById('n'+b).innerHTML='身份证号码格式正确！';
	}else{
		c = 'no';
		document.getElementById('n'+b).innerHTML='身份证号码格式不正确！';
	}
	show_msg(b);
}
function huzhaoName(b){
	var hzName = document.getElementById("hzName").value;
	if(hzName==''){
		c = 'no';
		document.getElementById('n'+b).innerHTML='护照姓名不能为空！';
	}else if(ischinese(hzName)){
		c = 'yes';
		document.getElementById('n'+b).innerHTML='护照姓名格式正确！';
	}else{
		c = 'no';
		document.getElementById('n'+b).innerHTML='护照姓名应该为中文！';
	}
	show_msg(b);
}

function huzhaoId(b){
	var hzCardId = document.getElementById("hzCardId").value;
	if(hzCardId==''){
		c = 'no';
		document.getElementById('n'+b).innerHTML='护照号码不能为空！';
	}else if(isNumberOr_Letter(hzCardId)){
		c = 'yes';
		document.getElementById('n'+b).innerHTML='护照证号码格式正确！';
	}else{
		c = 'no';
		document.getElementById('n'+b).innerHTML='护照证号码格式不正确！';
	}
	show_msg(b);
}



//验证码
function judgeCode(b){
	isRightCode();
	if(result.indexOf("success")<0){
		c = 'no';document.getElementById('n'+b).innerHTML='验证码不正确！';
	}else{
		c = 'yes';document.getElementById('n'+b).innerHTML='验证码正确！';
	}
	show_msg(b);
}

function subOnchack(){
	judgeAccount(1);
	if(c=='no'){
		return false;
	}
	var select = document.getElementById("cardType");
	var index = select.selectedIndex;
	var value = select.options[index].value; 
	
	if(value == "身份证"){
		shenfenName(2);
		if(c=='no'){
			return false;
		}
		shenfenId(3);
		if(c=='no'){
			return false;
		}
	}else if(value == "护照"){
		huzhaoName(4);
		if(c=='no'){
			return false;
		}
		huzhaoId(5);
		if(c=='no'){
			return false;
		}
	}
	judgeCode(6);
	if(c=='no'){
		return false;
	}
	return true;
}



//选择类型
function onTest(){
	var select = document.getElementById("cardType");
	var index = select.selectedIndex;
	var value = select.options[index].value; 
	if(value == "身份证"){
		document.getElementById("shenfen1").style.display="";
		document.getElementById("shenfen2").style.display="";
		document.getElementById("huzhao1").style.display="none";
		document.getElementById("huzhao2").style.display="none";
	}
	if(value == "护照"){
		document.getElementById("shenfen1").style.display="none";
		document.getElementById("shenfen2").style.display="none";
		document.getElementById("huzhao1").style.display="";
		document.getElementById("huzhao2").style.display="";
	}
	
}

//验证中文
function ischinese(s){
	var regu = "^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$"; 
	var re = new RegExp(regu); 
	if (re.test(s)) { 
		return true; 
	}else{ 
		return false; 
	} 
}

//验证账号
var accountresult;
function getUserAjax(account){   
    code = "account=" + account;   
    $.ajax({   
        type:"POST",   
        url:"anjudge.do",  
        async:false,
        data:code,   
        success:accountcallback   
    });   
}   
function accountcallback(data){   
	accountresult = data.split(";");
} 
//护照格式验证
function isNumberOr_Letter( s ){//判断是否是数字或字母 
	var regu = "^[0-9a-zA-Z\.]+$"; 
	var re = new RegExp(regu); 
	if (re.test(s)) { 
		return true; 
	}else{ 
		return false; 
	} 
} 
//--身份证号码验证-支持新的带x身份证
function isIdCardNo(num) {
    var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
    var error;
    var varArray = new Array();
    var intValue;
    var lngProduct = 0;
    var intCheckDigit;
    var intStrLen = num.length;
    var idNumber = num;    
    if ((intStrLen != 15) && (intStrLen != 18)) {
        document.getElementById("n3").innerHTML= "必须是有效的15或18位中华人民共和国身份证号码！";
        return false;
    }    
    for(i=0;i<intStrLen;i++) {
        varArray[i] = idNumber.charAt(i);
        if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) {
            document.getElementById("n3").innerHTML= "错误的身份证号码！";
            return false;
        } else if (i < 17){
            varArray[i] = varArray[i]*factorArr[i];
        }
    }
    if (intStrLen == 18) {
        var date8 = idNumber.substring(6,14);
        if (checkDate(date8) == false) {
            document.getElementById("n3").innerHTML= "身份证中日期信息不正确！";
            return false;
        }        
        // calculate the sum of the products
        for(i=0;i<17;i++) {
            lngProduct = lngProduct + varArray[i];
        }        
        // calculate the check digit
        intCheckDigit = 12 - lngProduct % 11;
        switch (intCheckDigit) {
            case 10:
                intCheckDigit = 'X';
                break;
            case 11:
                intCheckDigit = 0;
                break;
            case 12:
                intCheckDigit = 1;
                break;
        }        
        // check last digit
        if (varArray[17].toUpperCase() != intCheckDigit) {
            document.getElementById("n3").innerHTML= "身份证效验位错误!...正确为： " + intCheckDigit + ".";
            return false;
        }
    }else{        //length is 15
        //check date
        var date6 = idNumber.substring(6,12);
        if (checkDate(date6) == false) {
            document.getElementById("n3").innerHTML= "身份证日期信息有误！";
            return false;
        }
    }
    return true;
}
function checkDate(date)
{
    return true;
}
