var CHKForm={};
window["undefined"]=window["undefined"];
CHKForm.Loadimg=new Image();
CHKForm.Loadbarimg=new Image();
CHKForm.FormBind=function(){
	CHKForm.Loadimg.src="/images/admin/load.gif";
	CHKForm.Loadbarimg.src="/images/admin/loadbar.gif";
	var obj = document.getElementsByTagName("form");
	var obj_length=obj.length;
	for(var j=0;j<obj_length;j++){
		var oobj=obj[j];CHKForm.FormBind1(oobj);
	}
};
CHKForm.FormBind1=function(oobj){
	var FormsChild = oobj.elements;
	var FormsChild_length=FormsChild.length;
	for(var i=0;i<FormsChild_length;i++){
		ObjChild=FormsChild[i];
		CHKForm.FormBind2(ObjChild);
	}
};
CHKForm.FormBind2=function(ObjChild){
	if(ObjChild.getAttribute("check")!=""){
		_type=ObjChild.type;
		if(_type=="checkbox"||_type=="radio")addEvent(ObjChild,'click',function(){CHKForm.Check(ObjChild);});
		else addEvent(ObjChild,'blur',function(){CHKForm.Check(ObjChild);});
		
		if(ObjChild.type.toLowerCase()=="image" || ObjChild.type.toLowerCase()=="submit"){
			ObjChild.disabled=false;
		}
	}
};
CHKForm.Init=function(Forms){
	var FormsChild = Forms.elements;
	var SubmitObj=null;
	var ReturnValue=true;
	var Msg="";
	var J=0;
	var ObjChild=null;
	var CHKValue=true;
	try{
		var FormsChild_length=FormsChild.length;
		for(J=0;J<FormsChild_length;J++){
			ObjChild=FormsChild[J];
			if(ObjChild.type.toLowerCase()=="submit"){SubmitObj=ObjChild;}
			CHKValue=CHKForm.Check(ObjChild);
			if(CHKValue==false){
				ReturnValue=false;
				Msg ="·"+ObjChild.getAttribute("msg")+"\r\n";
				ObjChild.focus();
				break;
			}
		}
		if(SubmitObj==null){
			FormsChild = Forms.getElementsByTagName("input");
			FormsChild_length=FormsChild.length;
			for(J=0;J<FormsChild.length;J++){
				ObjChild=FormsChild[J];
				if(ObjChild.type.toLowerCase()=="image"){
					SubmitObj=ObjChild;
					break;
				}
			}
		}
		if(ReturnValue==true){
			//SubmitObj.disabled=true;
			//CHKForm.SubmitShow();
			return true;
		}else{
			alert(Msg);
			return false;
		}
	}catch(e){return false;}
};
CHKForm.ShowCheck=function(Obj,Is,Len,ajax){
	if(Is!=true || Len!=true || ajax=="ajax"){
		var MsgString="",ObjTitle="",ShowMsg="";
		var MsgStyle="";
		var MsgTitle="点击关闭提示！";
		MsgStyle="color:#f00;font-size:12px;";
		MsgString="&nbsp;<img src='/images/warn.gif' border=0 style='vertical-align:middle;'>&nbsp;";
		if(ajax=="ajax")ShowMsg+=Obj.getAttribute("amsg");
		else ShowMsg+=Obj.getAttribute("msg");
		ObjTitle=ShowMsg;
		MsgString+=ShowMsg;
		Obj.title=ObjTitle;
		if(Obj.id==null||Obj.id==""){Obj.id=Obj.name;}
		var ShowMsgObj=$(Obj.id+"_txt");
		var msg_obj_nohave=false;
		if(ShowMsgObj==null){
			return false;
			msg_obj_nohave=true;
			var _ParentObj=document.body;
			var _MsgSpan=document.createElement("div");
			_MsgSpan.id=Obj.id+"_txt";
			_ParentObj.appendChild(_MsgSpan);
		}
		ShowMsgObj=$(Obj.id+"_txt");
		with(ShowMsgObj.style){
				color="#000";
				display="none";
				margin="2px 0 2px 5px";
				padding="2px";
				if(msg_obj_nohave)position='absolute';
				backgroundColor='#fff';
				borderStyle='solid';
				borderWidth='0';
				//cursor="pointer";
				borderColor='#f90';
				mozopacity="0.95";
				filter="alpha(opacity=95)";
				opacity="0.95";
				if(msg_obj_nohave)zIndex="999";
			}
		///ShowMsgObj.style.backgroundColor='#fff';
		///ShowMsgObj.style.borderColor='#f90';
		
		var isdisplay=false;
		if(Obj.style.display=='none'){
			isdisplay=true;
			Obj.style.display='inline';
		}
		if(msg_obj_nohave){
			ShowMsgObj.style.left=getAbsLeft(Obj)+Obj.offsetWidth+5+"px";
			if(isdisplay){ShowMsgObj.style.top=getAbsTop(Obj)-Obj.offsetHeight-3+"px";}
			else{ShowMsgObj.style.top=getAbsTop(Obj)-3+"px";}
		}
		ShowMsgObj.innerHTML="<span style='"+MsgStyle+"'>"+MsgString+"</span>";
		//addEvent(ShowMsgObj,'click',function(){ShowMsgObj.style.display="none";});
		//ShowMsgObj.title=MsgTitle;
		ShowMsgObj.style.display='inline';
		//if(ShowMsgObj.offsetWidth<Obj.offsetWidth){ShowMsgObj.style.width=Obj.offsetWidth+"px";}
		//if(ShowMsgObj.offsetHeight<Obj.offsetHeight){ShowMsgObj.style.height=Obj.offsetHeight+"px";}
		if(isdisplay){Obj.style.display='none';}
	}else{
		Obj.title="";
		var ShowMsgObj=$(Obj.id+"_txt");
		if(ShowMsgObj!=null)ShowMsgObj.style.display="none";
	}
	if(Is&&Len){return true;}
	else{return false;}
};
CHKForm.CHKLen=function(Obj){
	var ReturnValue=true;
	try{
		var valen=Obj.value.length;
		var minleng=Obj.getAttribute("minleng");
		if(minleng!=null&&minleng!=""){
			var minlen=parseInt(minleng);
			if(valen<minlen){ReturnValue=false;}
		}
		var maxleng=Obj.getAttribute("maxleng");
		if(maxleng!=null&&maxleng!=""){
			var maxlen=parseInt(maxleng);
			if(valen>maxlen){ReturnValue=false;}
		}
	}catch(e){
		ReturnValue=true;
	}
	return ReturnValue;
};
CHKForm.Check=function(Obj){
	var _ChkLen=CHKForm.CHKLen(Obj);
	var _CheckType=Obj.getAttribute("check");
	if(_CheckType==null || _CheckType==""){return true;}
	var _CheckTypes=_CheckType.split(",");
	var ReturnValue;
	for(var z=0;z<_CheckTypes.length;z++){
		var allow=Obj.getAttribute("allow")+"";
		if(allow=="empty"&&(Obj.value==null||Obj.value=="")){
			ReturnValue=true;
			_ChkLen=true;
		}else{
			if(_CheckTypes[z]=="nonull"){
				var _Defaultstr=Obj.getAttribute("defaultstr")+"";
				ReturnValue=CHKForm.NotNull(Obj.value,_Defaultstr);
			}else if(_CheckTypes[z]=="chkvalue"){
				var _CHKObj=$(Obj.getAttribute("chkobj"));
				ReturnValue=CHKForm.CHKValue(Obj,_CHKObj);
			}
			else if(_CheckTypes[z]=="email"){ReturnValue=CHKForm.Email(Obj.value);}
			else if(_CheckTypes[z]=="num"){ReturnValue=CHKForm.Num(Obj.value);}
			else if(_CheckTypes[z]=="money"){ReturnValue=CHKForm.Money(Obj.value);}
			else if(_CheckTypes[z]=="mob"){ReturnValue=CHKForm.Mobile(Obj.value);}
			else if(_CheckTypes[z]=="tel"){ReturnValue=CHKForm.Tel(Obj.value);}
			else if(_CheckTypes[z]=="url"){ReturnValue=CHKForm.URL(Obj.value);}
			else if(_CheckTypes[z]=="validname"){ReturnValue=CHKForm.ValidName(Obj.value);}
			else if(_CheckTypes[z]=="validnamesite"){ReturnValue=CHKForm.ValidNameSite(Obj.value);}
			else if(_CheckTypes[z]=="cn"){ReturnValue=CHKForm.IsCN(Obj.value);}
			else if(_CheckTypes[z]=="host"){ReturnValue=CHKForm.IsHost(Obj.value);}
			else if(_CheckTypes[z]=="postcode"){ReturnValue=CHKForm.IsPostCode(Obj.value);}
			else if(_CheckTypes[z]=="idcard"){ReturnValue=CHKForm.IsIdCard(Obj.value);}
			else if(_CheckTypes[z]=="en"){ReturnValue=CHKForm.English(Obj.value);}
			else if(_CheckTypes[z]=="ip"){ReturnValue=CHKForm.IP(Obj.value);}
			else if(_CheckTypes[z]=="date"){ReturnValue=CHKForm.Date(Obj.value);}
			else if(_CheckTypes[z]=="datetime"){ReturnValue=CHKForm.DateTime(Obj.value);}
			else if(_CheckTypes[z]=="nickname"){ReturnValue=CHKForm.NickName(Obj.value);}
			else if(_CheckTypes[z]=="checked"){ReturnValue=Obj.checked;}
			else if(_CheckTypes[z]=="other"){ReturnValue=CHKForm.ExecPare(Obj);}
			
			if(ReturnValue){break;}
		}
	}
	var _CheckAjax=Obj.getAttribute("checkajax");
	if(_CheckAjax!=null && _CheckAjax!="" && ReturnValue && _ChkLen){
		CHKForm.CheckAjax(Obj,_CheckAjax,ReturnValue,_ChkLen);
	}
	return CHKForm.ShowCheck(Obj,ReturnValue,_ChkLen);
};
CHKForm.CheckAjax=function(Obj,_CheckAjax,ReturnValue,_ChkLen){
	var ai = new ajaxInfo();
	ai.okFunc = function(){
		if(ai.container=="1"){
			CHKForm.ShowCheck(Obj,ReturnValue,_ChkLen,"ajax");
		}
	}
	ai.get("/ajax.php?type="+_CheckAjax+"&value="+Obj.value);
};
CHKForm.PwdStrong=function(obj){
	var vLevel = 0;
	var vString = obj.value;
	
	if (CHKForm.ValidName(vString))
	{
		if (vString.match(/[a-zA-Z]/ig)) vLevel++;
		if (vString.match(/[0-9]/ig)) vLevel ++;
		if (vString.match(/(.[^a-z0-9])/ig)) vLevel ++;
		if (vString.length >= 10) vLevel ++;
		
		var vFirstChar = vString.substr(0, 1);
		var vRepeat = 1;
		var vSeq = '01234567890abcdefghijklmnopqrstuvwxyz';
		
		for (var i = 1 ; i < vString.length ; i ++)
		{
			if (vString.substr (i, 1) == vFirstChar)
			{
				vRepeat ++;
			} else {
				break;
			}
		}
		
		if (vString.length == vRepeat) vLevel --;
		if (vSeq.indexOf(vString.toLowerCase()) >= 0) vLevel --;
		vLevel = Math.min(Math.max(vLevel, 1), 3);
	}
	
	if(vLevel==0) $('passlevel').src = '/images/icon_none.gif';
	if(vLevel==1) $('passlevel').src = '/images/icon_weak.gif';
	if(vLevel==2) $('passlevel').src = '/images/icon_middle.gif';
	if(vLevel==3) $('passlevel').src = '/images/icon_strong.gif';
};
CHKForm.CHKValue=function(Obj,_CHKObj){
	if(_CHKObj==null){
		return true;
	}else{
		if(_CHKObj.value!=""){
			if(Obj.value == _CHKObj.value){return true;}
			else{return false;}
		}else{
			var allow=_CHKObj.getAttribute("allow")+"";
			if(allow=="empty"&&(_CHKObj.value==null||_CHKObj.value=="")){
				return true;
			}else{
				return false;
			}
		}
	}
};
CHKForm.ExecPare=function(Obj){
	if(Obj.getAttribute("pare")==null||Obj.getAttribute("pare")==""){
		return false;
	}else{
		var pare = null;
		eval("pare=/"+Obj.getAttribute("pare")+"/;");
		if(Obj.value.length==0){return false;}
		return pare.test(Obj.value);
	}
};
CHKForm.IsIdCard=function(str){
	var vCid = str;
	var vSum = 0;
	var vReg = /^([\d]{17}[xX\d]|[\d]{15})$/;
	var vCity = '|11|12|13|14|15|21|22|23|31|32|33|34|35|36|37|41|42|43|44|45|46|50|51|52|53|54|61|62|63|64|65|71|81|82|91|';
	if (!vReg.test(vCid)) return false;
	if(vCity.indexOf(parseInt(vCid.substr(0,2))) == '-1') return false;
	vCid = vCid.replace(/[xX]$/i, 'a');
	if (vCid.length == 18){
		vBirthday = vCid.substr(6, 4) + '/' + Number(vCid.substr(10, 2)) + '/' + Number(vCid.substr(12, 2));
	} else {
		vBirthday = '19' + vCid.substr(6, 2) + '/' + Number(vCid.substr(8, 2)) + '/' + Number(vCid.substr(10, 2));
	}
	var vDate = new Date(vBirthday);
	if (vBirthday != (vDate.getFullYear() + '/' + (vDate.getMonth() + 1) + '/' + vDate.getDate())) return false;
	if (vCid.length == 18){
		for(var i = 17 ; i >= 0 ; i--) vSum += (Math.pow(2, i) % 11) * parseInt(vCid.charAt(17 - i), 11);
  		if(vSum % 11 != 1) return false;
  	}
  	return true;
};
CHKForm.IsPostCode=function(str) {
	var pare = /^\d{6}$/;
	if(str.length==0)
	{return false;}
	return pare.test(str);
};
CHKForm.Email=function(emailStr){
  if(emailStr==null){return false;}
  var re = /^[-a-zA-Z0-9_\.]+\@([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{1,5}$/;
  if(re.test(emailStr)){return true;}
  return false;
};
CHKForm.IsHost=function(hostStr){
  if(hostStr==null){return false;}
  var re = /^[-a-zA-Z0-9\.]+([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{1,5}$/;
  if(re.test(hostStr)){return true;}
  return false;
};
CHKForm.NotNull=function(str,chkstr){
   if (str == null || CHKForm.Trim(str) == "" || str == chkstr) {
      return false;
   }else {
      return true;
   }
};
CHKForm.Trim=function(s) {
    var m = s.match(/^\s*(\S+(\s+\S+)*)\s*$/);
    return (m == null) ? "" : m[1];
};
CHKForm.Mobile=function(str) {
	var pare = /^(\+86)?(130|131|132|133|134|135|136|137|138|139|159|158|151|153|187|188|189)\d{8}$/;
	if(str.length==0){return false;}
	return pare.test(str);
};
CHKForm.Num=function(str) {
	var pare = /^[0-9]+$/;
	if(str.length==0)
	{return false;}
	
	return pare.test(str);
};
CHKForm.Money=function(str) {
	var pare = /^[1-9]+[0-9]*$/;
	if(str.length==0)
	{return false;}
	
	return pare.test(str);
};
CHKForm.IP=function(ip){
  if(ip==null){return false;}
  var re=/^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/;
  if(re.test(ip)){return true;}
  return false;
};
CHKForm.URL=function(url){
  if(url==null){return false;}
  var re = /^http(s)?:\/\/([a-zA-Z0-9\.]?([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{2,5})|((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9]))/;
  if(re.test(url)){return true;}
  return false;
};
CHKForm.ValidName=function(str) {
	var pare = /^[A-Za-z0-9_]+$/;
	return pare.test(str);
};
CHKForm.ValidNameSite=function(str) {
	var pare = /^[\u4e00-\u9fa5A-Za-z0-9_\@\.]+$/;
	return pare.test(str);
};
CHKForm.IsCN=function(str) {
	var pare = /^[\u4e00-\u9fa5]+$/;
	return pare.test(str);
};
CHKForm.NickName=function(str){
	var pare = /^[A-Za-z0-9_\u4e00-\u9fa5]+$/;
	return pare.test(str);
};
CHKForm.English=function(str) {
	var pare = /^([A-Za-z])+(([A-Za-z-\s])*([A-Za-z])+)*$/;
	return pare.test(str);
};
CHKForm.Tel=function(str){
	var pare = /^([0\+][0-9]{2,3}-)?((0[0-9]{2,3})-)([0-9]{7,8})(-([0-9]{3,}))?$/;
	if(str.length==0)
	{return false;}
	
	return pare.test(str);
};
CHKForm.Float=function(str){
	var pare = /^[0-9]+\.[0-9]+$/;
	if(str.length==0)
	{return false;}
	
	return pare.test(str);
};
CHKForm.Date=function(str) {
	var pare = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/;
	if(str.length==0)
	{return false;}
	
	return pare.test(str);
};
CHKForm.DateTime=function(str) {
	var pare = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$/;
	if(str.length==0)
	{return false;}
	
	return pare.test(str);
};

CHKForm.EparseInt=function(Px){
	return parseInt(Px.replace("px",""));
};
CHKForm.SubmitShow=function(){
	if(document.body==null){document.write("<body>");}
	var _root=document.body;
	//var _root=document.documentElement;
	var _rootWidth = _root.offsetWidth;
	var _rootHeight = getObjHeight(_root);
	//alert(_rootWidth+"/"+_rootHeight+" : "+_root.clientWidth+"/"+_root.clientHeight);
	var MainDiv = document.createElement("div");
	MainDiv.id="MainDiv";
	with(MainDiv.style){
		width="100%";height="100%";
		left="0px";top="0px";
		position="absolute";zIndex="25001";
		filter="alpha(opacity=20)";opacity="0.2";MozOpacity="0.2";KhtmlOpacity="0.2";
		backgroundColor="#333";
	}
	_root.appendChild(MainDiv);
	if(MainDiv.offsetWidth<_rootWidth){
		MainDiv.style.width = _rootWidth+"px";
	}
	if(MainDiv.offsetHeight<_rootHeight){
		MainDiv.style.height = _rootHeight+"px";
	}
	
	var MianIframe = document.createElement("iframe");
	MianIframe.id="MianIframe";
	with(MianIframe.style){
		width=MainDiv.style.width;height=MainDiv.style.height;
		left="0px";top="0px";
		position="absolute";zIndex="25000";
		filter="alpha(opacity=0)";opacity="0";MozOpacity="0";KhtmlOpacity="0";
		backgroundColor="#fff";
	}
	_root.appendChild(MianIframe);
	
	var LoaderDiv = document.createElement("div");
	LoaderDiv.id="LoaderDiv";
	with(LoaderDiv.style){
		width="293px";height="53px";
		left="0px";top="0px";
		position="absolute";zIndex="25002";
		filter="alpha(opacity=90)";opacity="0.9";MozOpacity="0.9";KhtmlOpacity="0.9";
	}
	
	var LoaderBg = document.createElement("div");
	LoaderBg.id="LoaderBg";
	with(LoaderBg.style){
		width="280px";height="40px";
		position="absolute";zIndex="25003";
		backgroundColor="#999";padding="4px";color="red";
		borderWidth="1px";borderStyle="solid";borderColor="#aaa";
		marginTop="3px";marginLeft="3px";
	}
	LoaderDiv.appendChild(LoaderBg);
	
	var Loader = document.createElement("div");
	Loader.id="Loader";
	with(Loader.style){
		width="280px";height="40px";
		position="absolute";zIndex="25004";
		backgroundColor="#fff";padding="4px";color="red";
		borderWidth="1px";borderStyle="solid";borderColor="#999";
	}
	
	var Loaderinfo = document.createElement("div");
	Loaderinfo.id="Loaderinfo";
	Loaderinfo.style.fontSize="12px";
	
	var img = document.createElement("img");
	img.src=CHKForm.Loadimg.src;
	img.width="18";img.height="18";
	img.align="absmiddle";
	Loaderinfo.appendChild(img);
	
	var txt=document.createTextNode("Information is submitted, please wait...");
	Loaderinfo.appendChild(txt);
	
	Loader.appendChild(Loaderinfo);
	
	var LoaderbarDiv = document.createElement("div");
	LoaderbarDiv.id="LoaderbarDiv";
	with(LoaderbarDiv.style){
		width="268px";height="18px";
		position="absolute";zIndex="25004";
		borderWidth="1px";borderStyle="solid";borderColor="#f30";
		marginTop="2px";backgroundColor="#ccc";
	}
	
	var Loaderbar = document.createElement("img");
	Loaderbar.id="Loaderbar_img"
	Loaderbar.src=CHKForm.Loadbarimg.src;
	with(Loaderbar.style){
		width="268px";height="18px";
		position="absolute";zIndex="25004";
		backgroundColor="#f60";
	}
	LoaderbarDiv.appendChild(Loaderbar);
	
	Loader.appendChild(LoaderbarDiv);
	LoaderDiv.appendChild(Loader);
	_root.appendChild(LoaderDiv);
	with(LoaderDiv.style){
		left=((MainDiv.offsetWidth-LoaderDiv.offsetWidth)/2)+"px";
		top=((MainDiv.offsetHeight-LoaderDiv.offsetHeight)/2)+"px";
	}
};
addEvent(window,'load',CHKForm.FormBind);