//TODO NOTE: system wide javascript debug
var debugmode = 1;


//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------

function errorHandling( err )
{
	document.parent.location.href = "ServerBusy.aspx?err=" + escape(err);
}


//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------


//netscape, safari, mozilla behave the same???
var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0; 
var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0; 
var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!= -1) ? 1 : 0; 
var is_opera = ((navigator.userAgent.indexOf("Opera6")!= -1) || (navigator.userAgent.indexOf("Opera/6")!= -1)) ? 1 : 0; 

//------------------------------------ XMLHttp send GET request -------------------------------
function HTTPGetRequest( xmlRequest, url )
{
	xmlRequest.open('GET', url, true);
	xmlRequest.send(null);
}

//------------------------------------ XMLHttp send POST request -------------------------------
function HTTPPostRequest( xmlRequest, url, str )
{
	xmlRequest.open('POST', url, true);
	xmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlRequest.send(str);
}

//---------------------------------------- AJAX Library -----------------------------------
function getXmlHttpObject(handler)
{
	var objXmlHttp = null;    //Holds the local xmlHTTP object instance

	//Depending on the browser, try to create the xmlHttp object
	if (is_ie)
	{
		//The object to create depends on version of IE
		//If it isn't ie5, then default to the Msxml2.XMLHTTP object
		var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP';

		//Attempt to create the object
		try
		{
			objXmlHttp = new ActiveXObject(strObjName);
			objXmlHttp.onreadystatechange = handler;
		}
		catch(e)
		{
			//Object creation errored
			alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled');
			return;
		}
	}
	else if (is_opera)
	{
		//Opera has some issues with xmlHttp object functionality
		alert('Opera detected. The page may not behave as expected. Please use IE for best affect.');
		return;
	}
	else
	{
		// Mozilla | Netscape | Safari
		objXmlHttp = new XMLHttpRequest();
		objXmlHttp.onload = handler;
		objXmlHttp.onerror = handler;
	}

	return objXmlHttp;
}