
function getXmlHttp() {
	var xmlHttp = null;
	try {	// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	} catch (e) {	// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
			}
		}
	}
	return xmlHttp;
}

function ajaxQuery(pMethod, pTarget, pHandler) {
	var xmlHttp = getXmlHttp();
	if (xmlHttp) {
		xmlHttp.onreadystatechange = function() {
			pHandler(xmlHttp);
		}
		xmlHttp.open(pMethod, pTarget, true);
		xmlHttp.send(null);
		return true;
	} else {
		return false;
	}
}

function ajaxFormSubmit(pFormID, pQueryData, pReturnHandler, pURL) {
	var form = document.getElementById(pFormID);
	if (form) {
		var queryString = '?qd=' + pQueryData;
		for (var i = 0; i < form.length; ++i) {
			queryString += '&';
			if (form.elements[i].type == "checkbox" || form.elements[i].type == "radio") {
				if (form.elements[i].checked) {
					queryString += encodeURIComponent(form.elements[i].id) + '=1';
				} else {
					queryString += encodeURIComponent(form.elements[i].id) + '=0';
				}
			} else {
				queryString += encodeURIComponent(form.elements[i].name) + '=' + encodeURIComponent(form.elements[i].value);
			}
		}
		form.reset();
		ajaxQuery('GET', pURL + '' + queryString, pReturnHandler);
		return false;
	}
	return true;
}

function getResponseText(pObj, pXMLHttp, pText) {
	if (!pObj) return;
	if (pXMLHttp.readyState == 4) responseTextFinish(pObj, pXMLHttp);
	else responseTextLoad(pObj, pText);
}
function responseTextFinish(pObj, pXMLHttp) {
	pObj.style.height = 'auto';
	pObj.innerHTML = pXMLHttp.responseText;
}
function responseTextLoad(pObj, pText) {
	var height;
	if (pObj.offsetHeight) { height = pObj.offsetHeight; }
	else if(pObj.style.pixelHeight) { height = pObj.style.pixelHeight; }
	var width;
	if (pObj.offsetWidth) { width = pObj.offsetWidth; }
	else if(pObj.style.pixelWidth) { height = pObj.style.pixelWidth; }
	pObj.innerHTML = '<div id="ajax_loading_box"><center>' + pText + '</center></div>';
	pObj.style.height = height + 'px';
	var E = document.getElementById('ajax_loading_box');
	E.style.height = height + 'px';
}
