function ajax()
{
	this.Initiate = function()
	{
		if(window.XMLHttpRequest)
		{
			this.http = new XMLHttpRequest();
		}
		else
		{
			this.http = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	
	this.Key = function()
	{
		return cookies.Get('ajax_key');
	}
	
	this.Run = function(url, post, onSuccess)
	{
		var sendData;
		
		if(!this.http)
		{
			alert("AJAX is not available, you cannot continue.");
			
			if(onSuccess)
			{
				onSuccess(false);
			}
			
			return false;
		}
		else
		{
			var ajaxRequest = this.http;
		}
		
		for(l in post)
		{
			if(sendData != "")
			{
				sendData = sendData + "&";
			}
			
			sendData = sendData + l + "=" + post[l];
		}
		
		//alert(url + "&" + sendData);
		
		ajaxRequest.open("POST", url + "&noseo&" + sendData, true);
		
		/*ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		ajaxRequest.setRequestHeader("Content-length", sendData.length);
		ajaxRequest.setRequestHeader("Connection", "close");*/
		
		ajaxRequest.onreadystatechange = function()
		{
			if(ajaxRequest.readyState == 4)
			{	
				var resp = ajaxRequest.responseText;
				
				if(resp == "INVALID REQUEST")
				{
					alert("Error processing your request");
					
					if(onSuccess)
					{
						onSuccess(false);
					}
				}
				else
				{
					onSuccess(resp);
				}
			}
		};
		
		ajaxRequest.send(null);
	}
}

var ajax = new ajax();
    ajax.Initiate();

