// JavaScript Document
	var loader_image1 = new Image();
	loader_image1.src = 'images/ajax-loader.gif';
	var MESSAGE_SERVER_PROBLEM = '[ Network or Server Problem Enountered ] Please notify the webmaster if the problem persists';
/****************
getDataReturnText(url, callback)
	** Uses the GET method to get text from the server. **
	Gets text from url, calls function named callback with that text.
	Use when you just want to get data from an URL, or can easily
	encode the data you want to pass to the server in an URL, such as
	“http://localhost/script.php?a=1&b=2&c=hello+there”.
	Example: getDataReturnText(“http://localhost/data.txt”, doWork);
	Here, the URL is a string, and doWork is a function in your own
	script.
	*************/	
function fw_getDataReturnText(url, callback)
{
	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest) {
		XMLHttpRequestObject = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}
	if(XMLHttpRequestObject) {
		XMLHttpRequestObject.open("GET", url);
		XMLHttpRequestObject.onreadystatechange = function()
		{
			if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
					if (callback)
				callback(XMLHttpRequestObject.responseText);
				delete XMLHttpRequestObject;
//				XMLHttpRequestObject = null;
			} //else callback(MESSAGE_SERVER_PROBLEM);
		}
		XMLHttpRequestObject.send(null);
	}
}

//////////////////////////
function fw_getNullReturnHtml(url, divid)
{
	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest) {
		XMLHttpRequestObject = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}
	if(XMLHttpRequestObject) {
		XMLHttpRequestObject.open("GET", url);
		XMLHttpRequestObject.onreadystatechange = function()
		{
			if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
					if (divid)
				document.getElementById(divid).innerHTML = XMLHttpRequestObject.responseText;
				delete XMLHttpRequestObject;
//				XMLHttpRequestObject = null;
			} //else callback(MESSAGE_SERVER_PROBLEM);
		}
		XMLHttpRequestObject.send(null);
	}
}
/*******************
	postDataReturnText(url, data, callback)
	** Uses the POST method to send data to server, gets text back. **
	Posts data to url, calls function callback with the returned text.
	Uses the POST method, use this when you have more text data to send
	to the server than can be easily encoded into an URL.
	Example: postDataReturnText(“http://localhost/data.php”,
	“parameter=5”, doWork);
	Here, the URL is a string; the data sent to the server
	(“parameter=5”) is a string;and doWork is a function in
	your own script.
	********************/
function fw_postFormReturnText(formx, callback)
{
	var data = fw_getRequestBody(formx);
	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest) {
		XMLHttpRequestObject = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		XMLHttpRequestObject = new
		ActiveXObject("Microsoft.XMLHTTP");
	}
	if(XMLHttpRequestObject) {
		XMLHttpRequestObject.open("POST", formx.action);
		XMLHttpRequestObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		XMLHttpRequestObject.onreadystatechange = function()
		{
			XMLHttpRequestObject.onreadystatechange = function()
			{
				if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
					callback(XMLHttpRequestObject.responseText);
					delete XMLHttpRequestObject;
//					XMLHttpRequestObject = null;
				} //else callback(MESSAGE_SERVER_PROBLEM);
			}
		}
		XMLHttpRequestObject.send(data);
	}
}
function fw_getRequestBody(oForm) 
{
	var aParams = new Array(oForm.elements.length);
	for (var i=0 ; i < oForm.elements.length; i++) {
//		var sParam = encodeURIComponent(oForm.elements[i].name);
		var sParam = oForm.elements[i].name;
		sParam += "=";
//		sParam += encodeURIComponent(oForm.elements[i].value);
		sParam += oForm.elements[i].value;
		aParams[i] = sParam;
	}
	return aParams.join("&");
}	

///////////// other function //////////////
	var FW_STORED_HTML = '';
	var FW_STORED_DIV = '';	
	
function fw_save_html(divid)
{
	FW_STORED_HTML = document.getElementById(divid).innerHTML;
	FW_STORED_DIV = divid;
}
function fw_restore_html()
{
	document.getElementById(FW_STORED_DIV).innerHTML = FW_STORED_HTML;
}