/*
＝＝＝＝＝＝＝＝＝＝[AJAX组件]＝＝＝＝＝＝＝＝＝
版本：1.0
作者：宁玉忠
Q  Q:176574013
版权：WWW.WEBZHU.COM
声名：本组件为个人开发用户只有使用权，不能修改。
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
*/
//定义全局变量
function Ajax(){
var HttpRequest=false;//定义XMLHttpRequest对象
var Url=null;//定义Url地址
var ContentType="text";
var id;
//定义全局变量结束
//定义功能函数
this.init=function ()//创建XMLHttpRequest的功能函数
{
	if (window.ActiveXObject && !window.XMLHttpRequest)
 	{
		window.XMLHttpRequest = function()
	 	{
			var msxmls = ['Msxml2.XMLHTTP.5.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0','Msxml2.XMLHTTP','Microsoft.XMLHTTP'];
			for (var i = 0; i < msxmls.length; i++)
		 	{
				try {
						return new ActiveXObject(msxmls[i]);
					}
				catch (e){}
			}
			return null;
		};
	}
	HttpRequest = new XMLHttpRequest();
	if(!HttpRequest)
		{
			return false;
		}
	return HttpRequest;
}
this.updatePage=function ()//得到更新内容
{
	if(HttpRequest.readyState==4)
	{
		if(HttpRequest.status==200)
		{
			if("text"==ContentType)
			{
				if(document.getElementById(id))
			  	 {
			  		document.getElementById(id).innerHTML=content;
			     }
			     else if(id=="getStatus")
			     {
			     	 translateStatus(content);
			     }
			}
			else
			{
				this.updateContent(HttpRequest.responseXML,id);
			}
			
		}
		else if(HttpRequest.status==404)
		{
			alert("请求的URL地址不存在！");
		}
		else if(HttpRequest.status==403)
		{
			alert("请求的URL地址禁止访问！");
		}
		else if(HttpRequest.status==401)
		{
			alert("请求的URL地址未经受权！");
		}
		else
		{
			alert("在请求URL的过程中，发生了如下错误："+HttpRequest.status);
		}
	}
}
this.getType=function (type)//得到请求的类型
{
	type=type.toUpperCase();
	if(type!="HEAD" && type!="POST" && type!="GET") type="HEAD";
	return type;	
}
this.getContentType=function (type)//要得到内容的类型XML/TEXT
{
	type=type.toLowerCase();
	if("xml"==type)
	{
		ContentType="xml";
		return "text/xml";
	}
	else
	{
		ContentType="text";
	}
	if("text"==type) return "text/plain";
	if("app"==type) return "application/x-www-form-urlencoded";
	return "text/plain";
}
this.getAjaxInfo=function (url,type,content,send,id)//主要的函数得到内容
{
	HttpRequest=this.init();
	HttpRequest.open(this.getType(type),url,true);
	HttpRequest.onreadystatechange=function ()//得到更新内容
{
	if(HttpRequest.readyState==4)
	{
		if(HttpRequest.status==200)
		{
			if("text"==ContentType)
			{
				 updateContent(HttpRequest.responseText,id)
			}
			else
			{
				updateContent(HttpRequest.responseXML,id);
			}
			
		}
		else if(HttpRequest.status==404)
		{
			alert("请求的URL地址不存在！");
		}
		else if(HttpRequest.status==403)
		{
			alert("请求的URL地址禁止访问！");
		}
		else if(HttpRequest.status==401)
		{
			alert("请求的URL地址未经受权！");
		}
		else
		{
			alert("在请求URL的过程中，发生了如下错误："+HttpRequest.status);
		}
	}
}
	HttpRequest.setRequestHeader("cache-control","no-cache"); 
	if(this.getType(type)=="POST")
	{
		send=encodeURI(send);
		content="app";
	}
	else
	{
		send=null;
	}
	HttpRequest.setRequestHeader("Content-Type",this.getContentType(content)+";encoding=utf-8");
	//alert(send)
	HttpRequest.send(send);
}

}

function updateContent (content,id)
  {
  	 if(document.getElementById(id))
  	 {
  		document.getElementById(id).innerHTML=content;
     }
     else if(id=="getStatus")
     {
     	 translateStatus(content);
     }
  }

function $(id){return document.getElementById(id);}
function $V(id){return document.getElementById(id).value;}
function $N(name){return document.getElementsByTagName(name);}
function getHost() { 
         return window.location.protocol+"//"+window.location.host;
}

function getCookie(cookieName)
{
	var cookieValue = null;
	var posName = document.cookie.indexOf(escape(cookieName) + '=');
	if (posName != -1)
	{
	var posValue = posName + (escape(cookieName) + '=').length;
	var endPos = document.cookie.indexOf(';', posValue);
	if (endPos != -1)
	{
	cookieValue = unescape(document.cookie.substring(posValue, endPos));
	}
	else
	{
	cookieValue = unescape(document.cookie.substring(posValue));
	}
	}
	return cookieValue;
}
function Cookie() {
	var self = this; 
	var trim = function(str)
	{
		return str.replace(/(^\s*)|(\s*$)/g, "");
	}
	var init = function()
	{ 
		var allcookies = document.cookie; 
		if (allcookies == "") return; 
		var cookies = allcookies.split(';'); 
		for(var i=0; i < cookies.length; i++) // Break each pair into an array 
		cookies[i] = cookies[i].split('='); 
		for(var i = 0; i < cookies.length; i++)
		{ 
			self[trim(cookies[i][0])] = decodeURIComponent(cookies[i][1]); 
		} 
	}
	init();
	this.save = function(daysToLive, path, domain, secure)
	{ 
		var dt = (new Date()).getTime() + daysToLive * 24 * 60 * 60 * 1000; 
		for(var prop in this)
		{ 
			if (typeof this[prop] == 'function') continue;
			var cookie = ""; 
			cookie = prop + '=' + encodeURIComponent(this[prop]);
			if (daysToLive || daysToLive == 0) cookie += ";expires=" + new Date(dt).toUTCString(); 
			if (path) cookie += ";path=" + path; 
			if (domain) cookie += "; domain=" + domain; 
			if (secure) cookie += ";secure"; 
			document.cookie = cookie; 
		} 
	}
	this.remove = function(path, domain, secure)
	{ 
		self.save(0, path, domain, secure); 
		for(var prop in this) 
		{ 
			if (typeof this[prop] != 'function') 
			delete this[prop]; 
		} 
	} 
}