function Req(){}
Req.makeRequest=function(MapID,url,busyReq,ProgressLabel,successCallback,errorCallback,request){
    if(busyReq){return;}
	var xmlHttp=Req.getRequest();
	if(xmlHttp!=null){
		Req.showProgress(MapID,ProgressLabel);
		xmlHttp.onreadystatechange=function(){
			if(xmlHttp.readyState==4){
				if(xmlHttp.status==200){
					successCallback(xmlHttp,MapID);
				}else{ 
					errorCallback(xmlHttp,MapID);
				}
			}
		};
	    xmlHttp.open("POST",url,true);
	    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	    xmlHttp.send(request);
	}
};

Req.getRequest=function(){
	var xmlHttp;
	try{
		xmlHttp=new ActiveXObject("MSXML2.XMLHTTP");
		return xmlHttp;
	}catch(e){}
	try{
		xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		return xmlHttp;
	}catch(e){}
	try{
		xmlHttp=new XMLHttpRequest()
		;return xmlHttp;
	}catch(e){}
	return null;
};

Req.showProgress=function(MapID,ProgressLabel){
	if(ProgressLabel!=""){
	    Progress.show(MapID, ProgressLabel)
	
//	    var Object=document.getElementById(Vb);
//	    var h = Object.clientHeight;
//		var w = Object.clientWidth;
//		var rtext="style='left:" +w/3+"px; top:" +h/2+"px;'"
//		var innerHTML=Req.getProgressHtml();
//		innerHTML=innerHTML.replace(/<rtext>/g, rtext);
//	    Object.innerHTML=innerHTML;
	}
};
Req.getProgressHtml=function(){
	return "<p class='progress'<rtext>><img src='Images/CTO_Waiting_clock.gif' align='middle'  alt='"+_progressText+"'/>&nbsp;"+_progressText+"</p>";
};
Req.getErrorHtml=function(Wb){
	return "<p class='progress'<rtext>>("+Wb.status+") "+Wb.statusText+"</p>";
};
Req.timeout=20000;