var xmlHttp = false; var REQUEST_GET = 0; var REQEST_POST = 2; var REQUEST_HEAD = 1; var REQUEST_XML = 3; function getXMLRequester( )
{ var xmlHttp = false; try
{ if( window.ActiveXObject )
{ for( var i = 5; i; i-- )
{ try
{ if( i == 2 )
{ xmlHttp = new ActiveXObject( "Microsoft.XMLHTTP" );}
else
{ xmlHttp = new ActiveXObject( "Msxml2.XMLHTTP." + i + ".0" );}
break;}
catch( excNotLoadable )
{ xmlHttp = false;}
}
}
else
{ xmlHttp = new XMLHttpRequest();}
}
catch( excNotLoadable )
{ xmlHttp = false;}
return xmlHttp ;}
function sendRequest( strSource, strData, intType, intID ){ 
	if( !strData )	strData = ''; 
	if( isNaN( intType ) )	intType = 2; 
	if( xmlHttp && xmlHttp.readyState )	{ xmlHttp.abort( ); xmlHttp = false;}
	if( !xmlHttp ){ 
		xmlHttp = getXMLRequester( ); 
		if( !xmlHttp )	return;
	}
	
	if( intType != 1 && ( strData && strData.substr( 0, 1 ) == '&' || strData.substr( 0, 1 ) == '?' ) ) strData = strData.substring( 1, strData.length ); 
	var dataReturn = strData ? strData : strSource; 
	
	switch( intType ){ 
	case 1: strData = "xml=" + strData; 
	case 2: 
			xmlHttp.open( "POST", strSource, true ); 
			xmlHttp.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded; charset=utf-8'); 
			xmlHttp.setRequestHeader( 'Content-length', strData.length ); 
			break; 
	case 3: 
			xmlHttp.open( "HEAD", strSource, true ); 
			strData = null; 
			break; 
	default:
			var strDataFile = strSource + (strData ? '?' + strData : '' ); 
			xmlHttp.open( "GET", strDataFile, true ); 
			strData = null;
	}
	xmlHttp.onreadystatechange = new Function( "", "processResponse(" + intID + ")" ); ; 
	xmlHttp.send( strData ); 
	return dataReturn;
}


function processResponse( intID )
{ switch( xmlHttp.readyState )
{ case 0:
case 1:
case 2:
case 3:
break; case 4:
if( xmlHttp.status == 200 )
{ processData( xmlHttp, intID );
}
else
{
if( window.handleAJAXError ){
handleAJAXError( xmlHttp, intID );} else{}
//alert( "ERROR\n HTTP status = " + xmlHttp.status + "\n" + xmlHttp.statusText+ "\n--------------------------\n" + xmlHttp.responseText ) ;
}
xmlHttp.abort();
}
}
