AJAX = function(){

	var request = false;
	var responseStr="",requestFn,url="";
	
	try {
		request = new XMLHttpRequest();
	} catch (trymicrosoft) {
		try {
			request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (othermicrosoft) {
			try {
	 			request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (failed) {
	 			request = false;
			}  
		}
	}
	if (!request)
		alert("Error initializing XMLHttpRequest!");
		
	this.get=function(){
		//alert("....");
		if(checkFn()){
			var d = new Date(); 
			var add="t="+d.getTime()
			var p=url.indexOf("?");
			if (p == -1)
				add="?"+add;
			else
				add="&"+add;
			request.open("GET",url+add, true);
			responseStr="";
			request.onreadystatechange = updateFn;
			
			request.send(null);
		}
	}
	
	function updateFn(){
		if (request.readyState == 4) {
			if (request.status == 200){
				//alert("....2");
				responseStr+=request.responseText; 
				if (responseStr.indexOf("\r\n")!=-1){
				//	alert(".....3");
					requestFn();
				}
				else{
					if(request.responseText!="") alert(request.responseText);
				}
			}
		}
	}
	
	this.getResponse=function(){
		return responseStr;
	}
	
	this.setFn=function(Fn){
		if(typeof(Fn)!="function"){
			alert("it's not function");
			return false;
		}else{
			requestFn=Fn;
			return true;
		}
	}
	this.setURL=function(str){
		url=str;
	}
	
	
	function checkFn(){
		if(typeof(requestFn)!="function"){
			alert("it's not function");
			return false;
		}
		return true;
	}

}

