// JavaScript Document

var req;
function CreateXmlDom(hand){
	var req1=null;
	if(window.XMLHttpRequest){
		req1=new XMLHttpRequest();
	}else if(window.ActiveXObject){ 
		try{ req1 = new ActiveXObject("Msxml2.HTTP");} catch (e){;}
		if(req1 == null) try { req1 = new ActiveXObject("Microsoft.XMLHTTP");} catch (e) {;}
	} 
	req1.onreadystatechange = hand;
	return req1;
}

function EvalResult(){ 
	if(req.readyState==4){
		if(req.status==200){
			eval(req.responseText);
		}
	}
} 

function ChkStringLength(str){
	var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;
	return len;
}

function ChkUser(str,ty){
		if(ty=="uname"){
			var filter=/^([a-zA-Z]{1})([A-Z0-9a-z_]{3,13})[a-zA-Z0-9]+$/;
		    if(!filter.test(str)){
			  GE(ty+"1").innerHTML = "[lang]UserName_Fail[/lang]";
			  GE(ty+"1").style.color = "#FF0000";
			  uname2 = false;
			  return false;
			}
		}else{
			var filter=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
			if(!filter.test(str)){
			  GE(ty+"1").innerHTML = "[lang]Email_Fail[/lang]";
			  GE(ty+"1").style.color = "#FF0000";
			  uemail2 = false;
			  return false;
			}
		}
		var st = "fun.asp?act=chkuser&id=" + ty + "," + str + "&rnd=" + Math.random();
		req = CreateXmlDom(EvalResult);
		req.open("GET",st,true);
		req.send(null);
}

//---------ǿ-----------

 function CharMode(iN){
 if (iN>=48 && iN <=57) //
  return 1; 
 if (iN>=65 && iN <=90) //дĸ
  return 2;
 if (iN>=97 && iN <=122) //Сд
  return 4;
 else
  return 8; //ַ
}

//bitTotal
//ǰ뵱һжģʽ
function bitTotal(num){
 modes=0;
 for (i=0;i<4;i++){
  if (num & 1) modes++;
  num>>>=1;
 }
 return modes;
}

//checkStrong
//ǿȼ

function checkStrong(sPW){
 if (sPW.length<=4)
  return 0;  //̫
 Modes=0;
 for (i=0;i<sPW.length;i++){
   //ÿһַͳһжģʽ.
  Modes|=CharMode(sPW.charCodeAt(i));
 }

 return bitTotal(Modes);
 
} 

//pwStrength
//ûſ̻ʧȥʱ,ݲͬļʾͬɫ

function pwStrength(pwd,obj){
var str="[lang]PassWord_Level_0[/lang]";
var ln=0;
 if (pwd==null||pwd==''){
  str="[lang]PassWord_Level0[/lang]";
  return false;
 }else{
  S_level=checkStrong(pwd);
 ln=S_level;
  switch(S_level)  {
   case 0:
    str="[lang]PassWord_Level0[/lang]";
	color="#FF0000";
   case 1:
    str="[lang]PassWord_Level1[/lang]"; 
	color = "#336699";
    break;
   case 2:
    str="[lang]PassWord_Level2[/lang]"; 
	color = "#0000FF";
    break;
   default:
   	color = "#66CC33"
    str="[lang]PassWord_Level3[/lang]";
    }
  } 
 
 GE(obj).innerHTML="[lang]PassWord_Level[/lang]:"+str;
 GE(obj).style.color = color;
 return ln;
}

function Chk2String(str1,str2,act){
	if( str1==str2 && str1.length>4){
		GE(act).innerHTML = "[lang]String_Pass[/lang]";
		pas3 = true;
		return true;
	}else{
		GE(act).innerHTML = "[lang]No_RePass[/lang]";
		pas3 = false;
		return false;
	}
}

function ChkAllOk(arr,frm){
	var j =0;
	if(typeof(arr) == "object"){
		for(var i=0;i<arr.length;i++)
			if(arr[i] == true) j++;
	}
	if(j == arr.length){
		GE(frm).submit();
		return true;
	}else{
		alert('[lang]Form_Nook[/lang]');
		return false;
	}
}


function PostXml(url,arr1,arr2,isArray){
	var str='<?xml version="1.0" encoding="utf-8"?>';
	str+='<root>';
	if(isArray){
		for(var i=0;i<arr1.length;i++){
			str += '<'+ arr1[i] + '><![CDATA['+arr2[i]+']]></' + arr1[i] + '>';}
	}else{
		str += '<'+arr1+'><![CDATA['+arr2+']]></'+arr1+'>';
	}
	str+='</root>';
		req = CreateXmlDom(EvalResult);
		req.open("POST",url,false);
		req.setRequestHeader("Content-Length",str.length);
		req.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");
		req.send(str);
}

function Preview(str,div1,ty){
  var x = document.getElementById(str);  if(!x || !x.value) return;
  var patn = /\.jpg$|\.jpeg$|\.gif$|\.png$/i;
  
  if(!patn.test(x.value)){
   alert("[lang]NoAllow_File[/lang]");
   GE(str).value = "";
  }else{
	 GE(div1).innerHTML = "";
	 var img=document.createElement('img');
	 if(GE(ty).checked == true){
		 img.setAttribute('src','file://localhost/'+x.value);
	 }else{
		 img.setAttribute('src',x.value);
	 }
	 img.setAttribute('id','img5');
	 document.getElementById(div1).appendChild(img);
	 if(GE("img5").width >= 532 ) {
		 var wid;
		 wid = Math.round(GE("img5").width / 532);
		 GE("img5").width = 532;
		 GE("img5").height = GE("img5").height / wid;
	 }
  }
}

function ResetRnd(){	GE("rndnum").src = "inc/rndnum.asp?" + Math.random();	}