// ******* AJAX FUNCTION  *******


//Create a boolean variable to check for a valid IE instance.
var xmlhttp = false;
//Check if we are using IE.
try {
	//If the javascript version is greater than 5.
	xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
	//If not, then use the older active x object.
	try {
		//If we are using IE.
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	} catch (E) {
		//Else we must be using a non-IE browser.
		xmlhttp = false;
	}
}
//If we are using a non-IE browser, create a JavaScript instance of the object.
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
	xmlhttp = new XMLHttpRequest();
}


function getMainParent (serverPage, objPage){
			var xmlhttpX = false;
			try {
				xmlhttpX = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					xmlhttpX = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (E) {
					xmlhttpX = false;
				}
			}
			if (!xmlhttpX && typeof XMLHttpRequest != 'undefined') {
				xmlhttpX = new XMLHttpRequest();
			}
	
		objPage = parent.document.getElementById(objPage);
		objPage.style.visibility = "visible";

		objPage.innerHTML = '<img src="images/acarregar.gif" border="0">';

		xmlhttpX.open("POST", serverPage);
		xmlhttpX.setRequestHeader("Content-Type","text/html; charset=ISO-8859-1");

		xmlhttpX.onreadystatechange = function() {
			if (xmlhttpX.readyState == 4 && xmlhttpX.status == 200) {
				objPage.innerHTML = xmlhttpX.responseText;
				delete xmlhttpX;
				xmlhttpX = null;
			}
		}

		//theObject.innerHTML = '<font color="#FF0000">ERR111111	</font>';
		xmlhttpX.send(null);

}


function getMain (serverPage, objPage){
	
			var xmlhttpX = false;
			try {
				xmlhttpX = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					xmlhttpX = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (E) {
					xmlhttpX = false;
				}
			}
			if (!xmlhttpX && typeof XMLHttpRequest != 'undefined') {
				xmlhttpX = new XMLHttpRequest();
			}
	
	
		theObject = document.getElementById(objPage);
		theObject.style.visibility = "visible";

		theObject.innerHTML = '<img src="images/acarregar.gif" border="0">';

		var obj = document.getElementById(objPage);

		xmlhttpX.open("POST", serverPage);
		xmlhttpX.setRequestHeader("Content-Type","text/html; charset=ISO-8859-1");

		xmlhttpX.onreadystatechange = function() {
			if (xmlhttpX.readyState == 4 && xmlhttpX.status == 200) {
				obj.innerHTML = xmlhttpX.responseText;
				delete xmlhttpX;
				xmlhttpX = null;
			}
		}

		//theObject.innerHTML = '<font color="#FF0000">ERR111111	</font>';
		xmlhttpX.send(null);
}


function submitform (theform, serverPage, objID, valfunc){
	var file = serverPage;
	var str = getformvalues(theform,valfunc);

	//If the validation is ok.
	if (aok == true){
		obj = document.getElementById(objID);
		processajax (serverPage, obj, "post", str);
	}
}


//Function to process an XMLHttpRequest.
function processajax (serverPage, obj, getOrPost, str){
	//Get an XMLHttpRequest object for use.
	xmlhttp = getxmlhttp ();
	if (getOrPost == "get"){
		xmlhttp.open("GET", serverPage);
		xmlhttp.onreadystatechange = function() {
			if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
				obj.innerHTML = xmlhttp.responseText;
			}
		}
		xmlhttp.send(null);
	} else {
		xmlhttp.open("POST", serverPage, true);
		xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=latin-1");
		xmlhttp.onreadystatechange = function() {
			if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
				obj.innerHTML = xmlhttp.responseText;
			}
		}
		xmlhttp.send(str);
	}
}


//**********************************************






//Function to create an XMLHttp Object.
function getxmlhttp (){
	//Create a boolean variable to check for a valid Microsoft active x instance.
	var xmlhttp = false;
	//Check if we are using internet explorer.
	try {
	//If the javascript version is greater than 5.
	xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
	//If not, then use the older active x object.
	try {
	//If we are using internet explorer.
	xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	} catch (E) {
	//Else we must be using a non-internet explorer browser.
	xmlhttp = false;
	}
	}
	// If not using IE, create a
	// JavaScript instance of the object.
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
	xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}





//******  PROCESS FORM  *********************
//Functions to submit a form.

function getformvalues (fobj, valfunc){
	var str = "";
	aok = true;
	var val;

	//Run through a list of all objects contained within the form.
	for(var i = 0; i < fobj.elements.length; i++){
		if(valfunc) {
			if (aok == true){
				val = valfunc (fobj);
			if (val == false){
				aok = false;
			}
		}
	}
	
	str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
	}
	//Then return the string values.
	return str;
	
}