
var XmlHttpObj;

var funcAtencion;
var funcFallo;

function CreateXmlHttpObj()
{
	try
	{
		XmlHttpObj = new ActiveXObject("Msxml2.XMLHTTP");	
	}
	catch(e)
	{
		try
		{
			XmlHttpObj = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch(oc)
		{
			XmlHttpObj = null;
		}
	}
		if(!XmlHttpObj && typeof XMLHttpRequest != "undefined") 
	{
		XmlHttpObj = new XMLHttpRequest();
	}
}

function EnviarPeticion (requestUrl, funcOk, funcError) {
	CreateXmlHttpObj();

	funcAtencion = funcOk;
	funcFallo = funcError;
	
	if(XmlHttpObj)
	{	
		XmlHttpObj.onreadystatechange = RecepcionDeRespuesta;
		XmlHttpObj.open( "POST", requestUrl, true );
		XmlHttpObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		XmlHttpObj.send('');		
	}
}

function RecepcionDeRespuesta()
{
	if(XmlHttpObj.readyState == 4) {
		//Cargada
		if(XmlHttpObj.status == 200) {
			//Todo ok
			if (funcAtencion)
				funcAtencion(XmlHttpObj.responseXML.documentElement);
		} else {
			if (funcFallo)
				funcFallo();
		}
	}
}

