//检查现用密码

/*function checkOldPassword(val){
	var result;
	var url = 'CheckPassword.action?flag='+val;
	 var params ={};
	 var myAjax = new Ajax.Request(   
       url,   
        {   
           method:'post',   
           parameters:params,   
           onComplete: function() {
           		var oBook = eval('(' + oRequest.responseText + ')');
                result = oBook.result;        	
           },   
           asynchronous:true   
        });   
	 return result;
}*/

 var result;
 function checkOldPassword(val) {
		
	      var url = 'CheckPassword.action?flag=' + val;
	        jQuery.ajax({
	        url: url,
	        type: 'post',
	        cache: false,
	        //data: params,
	        dataType: 'json',
	        asynchronous:true,
	        success:function (data, textStatus) {
	        	result=data.result;
	        	if(result==false){
	        	result	=false;
	        	jqalert("旧密码错误！");
	        	}else{
			  result=true;
			}
	        }
	        });
	        return result;			
	}

    
//检查用户名
function checkUserId(obj,val){
	var pattern =/^([A-Z]|[a-z]|[0-9])\w*([A-Z]|[a-z]|[0-9])$/;
	if(val.length>0){
		val=val.replace(/^(\s)*|(\s)*$/g,"");//去掉字符串两边的空格		
		if(val.length>20||val.length<6){
			jqalert("用户名长度必须为6～20个字符。");
			return;
	    }else if(!pattern.test(val)){
			jqalert("用户名由英文字母、数字或下划线组成，且必须以英文字母或数字开头和结尾。");
			return;
	    }
	    
	    repeatUserId(val);
	}
}

//检查密码
function checkPassword(obj,val){
	var len=val.length;
	if(len>0){
		len=val.replace(/^(\s)*|(\s)*$/g,"").length;//去掉字符串两边的空格后计算字符串的长度

		if(len==0){
			jqalert("密码不能全部为空格。");
		}else if(len>20||len<6){
			jqalert("密码长度必须为6～20个字符。");
	    }else if(isNumStr(val)){
	    	jqalert("密码不能全部为数字。");
	    }
	}
}

//检查确认密码
function checkPasswordConfirm(obj,val,password){
	var len=val.length;
	if(len>0&&(val!=password)){
		jqalert("两次输入的密码不一致！");
	}
}

//检查真实姓名
function checkRealName(obj,val){
	var len = val.length;
	if(len>0){
		val=val.replace(/^(\s)*|(\s)*$/g,"");//去掉字符串两边的空格
		//检查输入是否全部为汉字
		if(!isChnStr(val)){
			var pattern=/^([A-Z]|[a-z])*\/([A-Z]|[a-z])*$/;
			if(!pattern.test(val)){
				jqalert("格式错误，英文姓名请参照'john/smith'输入。");
			}
		}
	}	
}

//检查密码保护问题的答案
function checkAnswer(obj,val){
	var len = val.length;
	if(len>0&&(len>20||len<6)){
		jqalert("答案的长度必须在6~20位。");
	}
}

//检查区号(全部为数字，长度为3或者4)
function checkAreaNum(obj,val){
	var len=val.length;
	if(len>0&&(!isNumStr(val)||(len>4))){
		jqalert("请填写正确的区号！区号为3或4位数字.");
		
	}
}

//检查固定电话
function checkPhoneNum(obj,val){
	var len=val.length;	
	if(len>0&&!isNumStr(val)){
		jqalert("请输入正确的电话号码。");
		
	}
}

//检查手机号码

function checkMobileNum(obj,val){
	var len=val.length;
	if(len>0){
		if(!isNumStr(val)||(len!=11&&len!=14)){
			jqalert("请输入正确的手机号码。");
			
		}
	}

}

//检查电子邮件
function checkEmail(obj,val){
	var len=val.length;
	if(len>0 && !isEmail(val)){
		jqalert("请输入正确的Email!");
		
	}
}


//检查身份证（用户注册和用户修改）
	function checkIdNo(idNo,idType){	
		var len=idNo.length;
		if(idNo.length>0&&idType=="身份证"){ //检查是否有输入
			if(idNo.length==15 && isNumStr(idNo)){ //验证15位身份证号码
				if(idNo.substr(8,2)>12||idNo.substr(8,2)<1){ //验证“月”

					jqalert("您输入的证件号码出生日期有误，请检查后重新输入。");
					
					return false;
				}
				if(idNo.substr(10,2)>31||(idNo.substr(10,2))<1){ //验证“日”

					jqalert("您输入的证件号码出生日期有误，请检查后重新输入。");
					
					return false;
				}
			}else if(idNo.length==18){ //验证18位身份证号码
				if(idNo.substr(6,4)<1900||idNo.substr(6,4)>3000){ //验证“年”

					jqalert("您输入的证件号码出生日期有误，请检查后重新输入。");
					
					return false;
				}
				if(idNo.substr(10,2)<1||idNo.substr(10,2)>12){ //验证“月”

					jqalert("您输入的证件号码出生日期有误，请检查后重新输入。");
					
					return false;
				}
				/*if(idNo.substr(10,2)<1||idNo.substr(10,2)>12){ //验证“日”

					jqalert("您输入的证件号码出生日期有误，请检查后重新输入。");
					
					return false;
				}*/
				if(idNo.substr(12,2)>31||(idNo.substr(12,2))<1){ //验证“日”

					jqalert("您输入的证件号码出生日期有误，请检查后重新输入。");
					
					return false;
				}
				
				//18位身份证校验位校验
			    var Wi = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); //权值

			    var Ai = new Array('1','0','X','9','8','7','6','5','4','3','2');  //校验结果匹配
		  
		  		var CardNo = idNo;
			 	if (idNo.charAt(17) == 'x'){
		  		  	idNo = CardNo.replace("x","X");    
		 		}
		  
				var checkDigit = idNo.charAt(17);  
			    var cardNoSum = 0;
		  
			    for (var i=0; i<idNo.length-1; i++){
			    	cardNoSum = cardNoSum + idNo.charAt(i)*Wi[i];
		        }
		  
				var seq = cardNoSum%11;
			    var getCheckDigit = Ai[seq]; 
		  
			    if (checkDigit != getCheckDigit){
			 	   jqalert("您输入的证号码校验失败，请重新检查并输入!");
			 	   
				   return false;
			    }     
					return true;
			}else{
				jqalert("您的输入有误,身份证号码长度必需为15位或18位,请重新检查并输入!");
				
				return false;
			}
		}
	}

//检查出生日期格式，增加时间限制
    /*function transDate(val){
        var arr = val.split('-');
        var year = arr[0];
        var month = arr[1];
        var day = arr[2];

       if(month.length != 2){
        month = '0' + month;
       }

       if(day.length != 2){
           day = '0' + day;
       }

       return year + '-' + month + '-' + day;
       
      }
    */
	function isBirthday(val){
		var Bir = val.match(/^(19|20)\d{2}-(0?\d|1[012])-(0?\d|[12]\d|3[01])$/);
		var arr = val.split('-');
        var birYear = arr[0];
        var birMonth = arr[1];
        var birDay = arr[2];
        if(birMonth.length != 2){
        	birMonth = '0' + birMonth;
           }

           if(birDay.length != 2){
        	   birDay = '0' + birDay;
           }
		//var valBirthday = transDate(val);
		var day;
		var month;
		var year = new Date().getFullYear();
		
		if(Bir==null){
			
			jqalert("日期格式不匹配");
			return false;
		}
		else{
			
	       if(new Date().getDate() < 10){
	          day = '0' + new Date().getDate();
	          
	          }else{ 
	               day = new Date().getDate();
	          }
	       
	       if(new Date().getMonth() < 9){
	    	   month = '0' + (new Date().getMonth()+1);
	    	   
	    	   }else{
	    	        month = new Date().getMonth() + 1;
	    	   }

	       //IE不支持
	       //var today = ( new Date().getFullYear()) + '-' + month + '-' + day ;

	       //var iDays = parseInt((new Date(today) - new Date(valBirthday)) / 1000 / 60 / 60 /24);

	       //if(iDays >= 0 && iDays <= 36500){
	    	   
	           //return true;
	       //}
	       //else{
	    	   //if(iDays < 0){
	    		   
	    	   //jqalert("出生日期不能大于当前日期！");
	    	   //}
	    	   //else{
	    	   //jqalert("您的身体太棒了！");
	    	   //}
	           //return false;
	       //}
	       var iyear = year-birYear;
	       var imonth = month-birMonth;
	       var iday = day-birDay;
	       if(0 <= iyear&& iyear<100){
	    	   if(iyear!=0){
	    		   return true;
	    	   }
	    	   else{
	    		   if(imonth>=0){
	    			   if(imonth!=0){
	    				   return true;
	    			   }
	    			   else{
	    				   if(iday>=0){
	    					   return true;
	    				   }
	    				   else{
	    					   jqalert("出生日期不能大于当前日期！");
	    					   return false;
	    				   }
	    			   }
	    		   }
	    		   else{
	    			   jqalert("出生日期不能大于当前日期！");
	    			   return false;
	    		   }
	    	   }
	       }
	       else{
	    	   if(iyear<0){
	    		   jqalert("出生日期不能大于当前日期！");
	    	   }
	    	   else{
	    		   jqalert("您的身体太棒了！");
	    	   }
	    	   return false;
	       }
		}
	}
	//判断身份证号日期与出生日期（用户注册和用户修改）
	function tempBirNo(idNo,Bir,idType){
		var arr = Bir.split('-');
        var year = arr[0];
        var month = arr[1];
        var day = arr[2];
        
        if(month < 10){
            month = '0' + parseInt(month);
        }

        if(day < 10){
            day = '0' + parseInt(day);
        }
        if(idType=="身份证"){
        if(idNo.length==15 && isNumStr(idNo)){   //15位身份证号码
        	if(idNo.substr(8,2)!=month){ 

				jqalert("您输入的出生日期和证件号码出生日期匹配有误，请检查后重新输入。");
				
				return false;
			}
            if(idNo.substr(10,2)!=day){ 

				jqalert("您输入的出生日期和证件号码出生日期匹配有误，请检查后重新输入。");
				
				return false;
			}
        }else if(idNo.length==18){ //验证18位身份证号码
			if(idNo.substr(6,4)!=year){ 

				jqalert("您输入的出生日期和证件号码出生日期匹配有误，请检查后重新输入。");
				
				return false;
			}
			if(idNo.substr(10,2)!=month){ 

				jqalert("您输入的出生日期和证件号码出生日期匹配有误，请检查后重新输入。");
				
				return false;
			}
			
			if(idNo.substr(12,2)!=day){ 

				jqalert("您输入的出生日期和证件号码出生日期匹配有误，请检查后重新输入。");
				
				return false;
			}
        }   
	}
}
	

//检查邮政编码
function checkPostCode(obj,val){
	var len=val.length;
	if(len>0&&len!=6){
		jqalert("请输入正确的邮政编码！");
		
	}
}

//检查QQ
function checkQq(obj,val){
	var len=val.length;
	if(len>0){
		if(!isNumStr(val)){
			jqalert("您输入的QQ号码有误，请检查后重新输入。");
			
		}
	}
}

/*-------------------------------------------------------------------------------------------------------*/
//检查字符串是否全是数字
function isNumStr(val){
	var pattern = /^[0-9]+$/;
	if (pattern.test(val)){
		return true;
	}
	return false;
}

//检查字符串是否为空字符串
function isNullStr(val)
{	
	var len=val.length;
	if(val.length==0){
		return false;
	}else{
		val=val.replace(/^(\s)*|(\s)*$/g,"");//去掉字符串两边的空格
		if (val.length==0)
		{
			return false;
		}
	}
	
	return true;
}

function checkNull(val,msg)
{	
	var len=val.length;
	if(val.length==0){
		jqalert(msg);
		return false;
	}else{
		val=val.replace(/^(\s)*|(\s)*$/g,"");//去掉字符串两边的空格
		if (val.length==0)
		{
			jqalert(msg);
			return false;
		}
	}
	
	return true;
}

//检查电子邮件格式
function isEmail(val){
	//var pattern = /^[_\.0-9a-zA-Z]+@([[0-9a-zA-Z][0-9a-zA-Z]+\.)+[a-zA-Z]{2,3}$/;
	var pattern =/^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/gi; 
	if (pattern.test(val)){
		return true;
	}
	return false;
}

//检查是否为汉字
function isChnStr(val){
	var pattern= /^[\u4e00-\u9fa5]+$/i;
	if(pattern.test(val)){
		return true;
	}
	
	return false;
}
