	function ajax(){
		this.reObj = null
		this.request = false;
		this.sendStr = " "
		this.url = ""
		this.actFunc = false
		this.regFuncs = new Array;
		this.noAct = true;
		this.pollSto = false
	}
	ajax =new ajax;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
	    ajax.request = new XMLHttpRequest();
	    if (ajax.request.overrideMimeType) {
	        ajax.request.overrideMimeType('text/plain');
	     }
	} else if (window.ActiveXObject) { // IE
	     try {
			ajax.request = new ActiveXObject("Msxml2.XMLHTTP");
	     } catch (e) {
	         try { ajax.request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
	     }
	}else{
		alert("XMLHTTP初始化失败");
	}

   function ajaxRequest() {
        ajax.request.open('POST', ajax.url, true);
		ajax.request.onreadystatechange = getRequest;
        ajax.request.send(ajax.sendStr);
   }


	function getRequest(){
		if (ajax.request.readyState == 4) {
			if (ajax.request.status == 200) {
//alert(ajax.request.responseText)
				if(ajax.request.responseText)
					ajax.reObj = eval("("+ajax.request.responseText+")");
				try{ if(ajax.regFuncs.length>0) ajax.regFuncs.shift() }catch(e){}
				if( ajax.actFunc ) ajax.actFunc()
				ajax.noAct = true;
			}
		}
    }

    function regFunc(func){
		ajax.regFuncs.push(func)
		if( !ajax.pollSto ) pollFunc()
	}

	function pollFunc(){
		len = ajax.regFuncs.length
		if(len<1){
			clearTimeout(ajax.pollSto)
			ajax.pollSto = false
			return false
		}else if(len>0 && ajax.noAct){
			ajax.noAct = false;
			ajax.regFuncs[0].call()
		}
		ajax.pollSto = setTimeout("pollFunc()",500)
	}

 function $(id){
		return document.getElementById(id);
 }
 function $ns(name){
		return document.getElementsByName(name);
 }

  function get_get(){
	thisUrl = window.location.href;
	isPHP = thisUrl.search(/\.php/ig);
	if(isPHP>0){
		querystr = thisUrl.split("?")
		if(querystr[1]){
			GETs = querystr[1].split("&")
			GET =new Array()
			for(i=0;i<GETs.length;i++){
				tmp_arr = GETs[i].split("=")
				key=tmp_arr[0]
				GET[key] = tmp_arr[1]
			}
		}
	}else{
		GETs = thisUrl.split("-")
		gLen = GETs.length
		GETs[gLen-1] = GETs[gLen-1].replace(/^(.+)\.html?[^\.]*$/gi,"$1");
		GET =new Array()
		for(i=1;i<gLen;i++){
			key = GETs[i].replace(/^([^\d]+)\d*$/g,"$1")
			GET[key] = GETs[i].replace(/^[^\d]+(\d*)$/g,"$1")
		}
	}
  }
  get_get()

	function isLogin(){
		var re = /([^\.]+\.com)/i
		var hname = re.exec(location.hostname)[1];
	  try{
	  	var Login = $("login");
			var Loged = $("loged");
			if( getCookie("GCG_auth") ){
				 Loged.style.display="block"
				 Login.style.display="none"
					ajax.sendStr = '{"index":1}';
					ajax.url = "/ajaxserver/action.php";
					ajax.actFunc = function(){ $("uname").innerHTML = ajax.reObj["username"] }
					ajaxRequest()
			}else{
				 Loged.style.display="none"
				 Login.style.display="block"
			}
    }catch(e){}
	}




  function chgChkcode(init){
	 var ccimg = $("chkCodeimg")
   if( init && ccimg.src!="http://"+document.location.hostname+"/images/chknum.gif" ){  return; }
   var d = new Date();
   var t = d.getTime();
	 ccimg.src = "includes/chk_num.php?t="+t
	 return false
  }

 function getCookie(cname){
 	cname = cname.replace("[","\\\[");
	cname = cname.replace("]","\\\]");
	try{
		var re = eval("/(^| )"+cname+"=([^;]+)/ig")
	 	return re.exec(document.cookie)[2]
	}catch(e){ return false }
 }

  function setCookie(name,value,domain,cdate, day){
  	day = day || 7;
	  domainStr = (domain) ? "; domain=" + domain : "";
	  var d =new Date;
	  if(!cdate) d.setDate( d.getDate() + day );
	  else d.setDate( d.getDate() - 1 );
	  document.cookie = name + "=" + value + "; expires=" + d.toGMTString() + "; path=/" + domainStr;
 }

 Array.prototype.search = function(val){
	var len = this.length
	for(i=0;i<len;i++){
		if(this[i]==val) return i;
	}
	return false;
 }


  function allinit(){
  	try{
	  	 $ns("chgCode")[0].onclick = chgChkcode
	  	 $("loginButt").onclick = chkLogin
	  	 $ns("logoutButt")[0].onclick = logout
	  	 isLogin()
	  }catch(e){}
  }
  if(document.all)  window.attachEvent('onload', allinit);
  else  window.addEventListener('load', allinit, false);

 String.prototype.cn2num=function(){
	var str = this.toString()
	var slen = str.length
	var cns = { "０":0, "１":1, "２":2, "３":3, "４":4, "５":5, "６":6, "７":7, "８":8, "９":9 }
	var re =new RegExp
	re.compile("([０１２３４５６７８９])")
	for( i=0; i<=slen; i++ ){
		var chr = str.charAt(i);
		if(chr.match(re))
			str = str.replace(chr,cns[chr]);
	}
	return str;
 }
 
  function chkLogin(){
	  reStr = '{'
	  $("chkcode").value = $("chkcode").value.cn2num()
		arr1 = [$("username"), $("password"), $("chkcode")]
		arr2 = ["用户名","密码","验证码"]
		for(i=0;i<3;i++){
		  if(arr1[i].value==""){
		     alert("请输入"+arr2[i]+"！");  arr1[i].focus();  return false;
		  }
		  reStr += '"' + arr1[i].id + '":"' + arr1[i].value + '",'
		}
		ajax.sendStr = reStr.substr(0,reStr.length-1) + '}'
	  ajax.url = "/ajaxserver/login.php";
	  ajax.actFunc = loginAct
	  ajaxRequest()
	  return false
 }

  function loginAct(){
		var errAlt = {
			0 : "",
			1 : "验证码错误，登陆失败",
			2 : "该用户已暂时被锁定,无法登陆！",
			3 : "密码错误，请重新输入！",
			4 : "用户名错误或无此用户名！"
		}
		if(ajax.reObj["islogin"]==1) isLogin()
		eCode = ajax.reObj["errCode"]
		if(eCode>0)   alert( errAlt[eCode])
	  return false
  }
