var http='';
var strGlobalTarget = "defaultTargetDiv";
var objGlobalTarget;
var parms='';
function ajax()
{
	this.POST = post;
	this.GET = get;
}

function createXMLHTTP()
{
	var request;
	var browser = navigator.appName;
	if (browser == "Microsoft Internet Explorer"){
		var arrVersions= ["Microsoft.XMLHttp", "MSXML2.XMLHttp" ,"MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp.5.0"];
		for (var i = 0; i < arrVersions.length; i++){
			try{
				request = new ActiveXObject(arrVersions[i]);
				return request;
			}catch(exception){

			}
		}
	}else{
		request = new XMLHttpRequest();
		return request;
	}
	return null;
}

function post(strUrl, strTarget, getRequestFunctoin){
	http = createXMLHTTP();
	if (strTarget==''){
		var objTarget = createNewDiv(strGlobalTarget);
	}else{

		if (typeof(strTarget)=="object") {
			var objTarget = strTarget;
		}else{
			var objTarget = createNewDiv(strTarget);
		}
	}
	if (getRequestFunctoin == null)
	{
		getRequestFunctoin = defaultGetRequest;
	}
	objGlobalTarget = objTarget;
	openURL ("POST", strUrl, objTarget, getRequestFunctoin);
}

function get(strUrl, strTarget, getRequestFunctoin){
	http = createXMLHTTP();
	if (strTarget==''){
		var objTarget = createNewDiv(strGlobalTarget);
	}else{
		if (typeof(strTarget)=="object") {
			var objTarget = strTarget;
		}else{
			var objTarget = createNewDiv(strTarget);
		}
	}
	if (getRequestFunctoin == null)
	{
		getRequestFunctoin = defaultGetRequest;
	}
	objGlobalTarget = objTarget;
	openURL ("GET", strUrl, objTarget, getRequestFunctoin);
}

function openURL(type, strUrl, objTarget, getRequestFunctoin)
{
	//objTarget.innerHTML = "";
	//strUrl='/dev/content.php';
	//parms='a=1&b=25&c=13456';
	if (type=='POST'){
	  parms = strUrl.substring(strUrl.indexOf('.php') + 5);
	  if (parms.length >2048)
	  strUrl = strUrl.substring(0,strUrl.indexOf('.php') + 4);
	}
	
	try{
		http.open(type, strUrl, true);
	}catch(exception){
		alert(exception);
	}
	http.onreadystatechange = getRequestFunctoin;
	//alert(parms);
	if ((parms!="") && (parms.length >2048)){
	  http.setRequestHeader("Content-Length", parms.length);
		http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		http.send(parms);		
	}else{
		http.send(null);
  }
  parms='';
	objGlobalTarget = objTarget;
	//alert(objGlobalTarget);
}
function createNewDiv(strTarget)
{
	var body = document.getElementsByTagName('body')[0];
	if (document.getElementById(strTarget)!= null)
	{
		return document.getElementById(strTarget);
	}
	div = document.createElement('Div');
	div.style.display = "none";
	div.id = strTarget;
	body.appendChild(div);
	return document.getElementById(strTarget);
}

function defaultGetRequest()
{
	var target = objGlobalTarget;
	if (http.readyState == 4){
		var text = http.responseText;
		//jira.style.display = "none";
		target.innerHTML = text;
	}
}

function setParm(strParms)
{
  parms = strParms;
}