/*
CM Ajax (CMAjax.js)
Created by: Joakim Westerlund (Centus AB)
Date: 2005-11-16
*/
CMSAjaxObj.prototype.getRequest = CMSAjaxGetRequest;
CMSAjaxObj.prototype.sendRequest = CMSAjaxSendRequest;
/*---------------------------------------------------------*/
/* Constructor for the AJAX */
/*---------------------------------------------------------*/
function CMSAjaxObj(sUrl){
	if(typeof(sUrl) == "undefined"){
		alert("Error: No URL defined.");
	}
	this.http_request = this.getRequest();
	this.url = sUrl;
	this.onReadyStateChange = "";
	this.method = "GET";
}
/*---------------------------------------------------------*/
/*	METHODS	*/
/*---------------------------------------------------------*/
/*---------------------------------------------------------*/
/*	Get the request object depend on browser	*/
/*---------------------------------------------------------*/
function CMSAjaxGetRequest(){
	var ua = navigator.userAgent.toLowerCase();
	if (!window.ActiveXObject){ return new XMLHttpRequest(); }
	else if (ua.indexOf('msie 5') == -1){ return new ActiveXObject("Msxml2.XMLHTTP"); }
	else { return new ActiveXObject("Microsoft.XMLHTTP");}
}
/*---------------------------------------------------------*/
/*	Send the request	*/
/*---------------------------------------------------------*/
function CMSAjaxSendRequest(){
	
	//CMSAjaxSendRequest.arguments[0], this is parameters that will be posted
	
	if(this.onReadyStateChange == ""){
		//alert("No state change event defined.\n use:\noAjaxObj.onReadyStateChange = \"YourFunctionAsString()\".");
		return false;
	}
	var _req = this.http_request;
	var _stateChange = this.onReadyStateChange;
	this.http_request.open(this.method,this.url,true);
	this.http_request.onreadystatechange = function () { eval( _stateChange ) };
	
	if (CMSAjaxSendRequest.arguments.length > 0)
	{
		this.http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		this.http_request.setRequestHeader("Content-length", CMSAjaxSendRequest.arguments[0].length);
		this.http_request.setRequestHeader("Connection", "close");
	}
	this.http_request.send(CMSAjaxSendRequest.arguments.length > 0 ? CMSAjaxSendRequest.arguments[0] : null);
}

function CMSOnreadyStateChange(){
	req = oAjax.http_request;
	//ReadyState 4 = Loaded
	if(req.readyState == 4){
		if (req.status == 200){
			//alert(req.responseText); //everything ok alert responseText
		}
		else{
			//alert("There was a problem with the request. Status:<strong>" + req.status + "</strong>"); //Error
		}
	}else{
		//Still loading
	}
}