/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// COMMON AJAX FUNCTIONS
// J. MARSELLA - JASPER CONSULTING - JULY 2008
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
var xmlHTTP							= null;
var handleGetComplete				= 'handleGetComplete';
var handlePostComplete				= 'handlePostComplete';

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function GetXMLHttpObject() {
var xmlObj							= null;
	try {
	// Firefox, Opera 8.0+, Safari
	xmlObj							= new XMLHttpRequest();
	}catch (e)	{
	// Internet Explorer
		try	{
		xmlObj						= new ActiveXObject("Msxml2.XMLHTTP");
		}catch (e)	{
		xmlObj						= new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
return xmlObj;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getAjaxContent(url) {
xmlHTTP								= GetXMLHttpObject();
	if (xmlHTTP == null) {
	//showError();
	return;
	}
xmlHTTP.onreadystatechange			= ajaxGetStateChanged;	
xmlHTTP.open("GET", url, true/*ensure this call is asynchronous*/);
xmlHTTP.send(null);
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getAjaxContentInline(url) {
var _xmlHTTP						= GetXMLHttpObject();
	if (_xmlHTTP == null) {
	//showError();
	return null;
	}
_xmlHTTP.open("GET", url, false/*ensure this call is synchronous*/);
_xmlHTTP.send(null);
return _xmlHTTP;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function postAjaxContent(url,parameters) {
xmlHTTP								= GetXMLHttpObject();
	if (xmlHTTP == null) {
	//showError();
	return;
	}
xmlHTTP.onreadystatechange			= ajaxPostStateChanged;	
xmlHTTP.open('POST', url, true/*ensure this call is asynchronous*/);
xmlHTTP.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHTTP.setRequestHeader("Content-length", parameters.length);
xmlHTTP.setRequestHeader("Connection", "close");
xmlHTTP.send(parameters);
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function ajaxGetStateChanged() { 
	// IF ALL WENT WELL, CALL OUR CALLBACK
	if (xmlHTTP.readyState==4) { 
	eval(handleGetComplete)(/*success*/true,xmlHTTP);
	}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function ajaxPostStateChanged() { 
	// IF ALL WENT WELL, CALL OUR CALLBACK
	if (xmlHTTP.readyState==4) { 
	eval(handlePostComplete)(/*success*/true,xmlHTTP);
	}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function handleGetComplete() {
alert('Developer Error!  handleGetComplete Callback Undefined!');
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// CALLED WHEN WE SIMPLY WANT TO DISPLAY THE CONTENTS OF THE AJAX CALL IN THE RESPONSE CONTAINER AS IS, OR SHOW
// A GENERAL ERROR IN THE EVENT OF COMMUNICATION FAILURE.
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function handleStandardGetComplete(success, xmlHTTP) {
responseContainer.innerHTML			= xmlHTTP.responseText;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function handlePostComplete() {
alert('Developer Error!  handlePostComplete Callback Undefined!');
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getInnerAjaxLoader() {
var str								= "<div style='width: 100%; height: 100%;'><table border='0' width='100%' height='100%'><tr><td align='center'>";
str									+= "<div class='innerAjaxLoader'><img src='/images/loadAnim7.gif' border='0' width='32' height='32' /></div></td></tr></table></div>";
return str;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getInnerHRAjaxLoader() {
var str								= "<div style='width: 100%; height: 100%;'><table border='0' width='100%' height='100%'><tr><td align='center'>";
str									+= "<img src='/images/hrLoadAnim1.gif' border='0' width='220' height='19' style='margin-top: 11px;' /></td></tr></table></div>";
return str;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getInnerAjaxFailure() {
var str								= "<div style='width: 100%; height: 100%;'><table border='0' width='100%' height='100%'><tr><td align='center'>";
str									+= "<div style='color: #990000; padding: 5px;'>Request Failed.  Please try again.</div></td></tr></table></div>";
return str;
}
