/* función para crear un objeto HTTP */
function createXMLHttp() {
	if( typeof XMLHttpRequest != "undefined" ) {
		return new XMLHttpRequest();
	}
	else if( window.ActiveXObject) {
		var aVersions = [ 
			"MSXML2.XMLHttp.5.0",
			"MSXML2.XMLHttp.4.0",
			"MSXML2.XMLHttp.3.0",
			"MSXML2.XMLHttp",
			"Microsoft.XMLHttp"
		];
		for( var i = 0; i < aVersions.length; i++ ) {
			try {
				var oXmlHttp = new ActiveXObject( aVersions[i] );
				return oXmlHttp;
			}
			catch ( oError ) {
				// Error
			}
		}
	}
	throw new Error("El objecto XMLHttp no pudo ser creado");
}

var XML = "";
var xmlHttpError = "";
/********************************************************************************************************************
 * Función que realiza conexión HTTP y regresa el código HTML, después ejecuta la función enviada como parámetro	*
 * 'execute' si no se envía el parámetro el resultado del httprequest se insertará en el div con el id del parámetro*
 * domObject. IS																									*
 ********************************************************************************************************************/
function getHttpRequestX(action, execute, domObject, message) {
	if( domObject != '' &&  execute == '' )
		LoadingObject(domObject, message);
	var oXmlHttp = createXMLHttp();
	//oXmlHttp.setRequestHeader("Content-type", "text/html; charset=ISO-8859-1");
	oXmlHttp.open("get", action, true);	
	oXmlHttp.onreadystatechange = function () {
		if ( oXmlHttp.readyState == 4 ) {
			if( oXmlHttp.status == 200 )
				XML = oXmlHttp.responseXML;
			else {	
				XML = "*** ERROR *** <br/><a href='javascript:alert(xmlHttpError);'>Ver detalle</a>";
				xmlHttpError = "Error ID : " + oXmlHttp.status + "\nDescripción : " + oXmlHttp.responseXML;
			}
			//alert(escape(oXmlHttp.responseText));
			//alert(unescape(escape(oXmlHttp.responseText)));
			//alert("--" + oXmlHttp.responseText);
			if( domObject != '' ) {
				GetObjectByID(domObject).innerHTML = oXmlHttp.responseXML;
			}
			if( execute != '' )
				eval(execute);
			//if( domObject == '' && execute == '' )	
				//window.status("Datos guardados correctamente...");
		}
	};
	oXmlHttp.send(null);
}