// JavaScript Document
var _pub_xmlHttp;
var _lugarResultado;
var _lugarStatus;

	function funcionEnviaDatosAjax(url, parametros, lugar, lugarStatus)
	{
		_lugarResultado = lugar;
		_pub_xmlHttp = GetXmlHttpObject();
		url = url + "?"+ parametros;
		url = url+"&sid="+Math.random();
		_pub_xmlHttp.onreadystatechange = stateChangedFunctions;
		_pub_xmlHttp.open("POST",url,true);
		_pub_xmlHttp.send(null);
	}

	function funcionAjaxXML(url, parametros)
	{
		try
		{
		_pub_xmlHttp = GetXmlHttpObject();
		url = url + "?"+ parametros;
		url = url+"&sid="+Math.random();
		_pub_xmlHttp.onreadystatechange = stateChangedXML;
		_pub_xmlHttp.open("POST",url,true);
		_pub_xmlHttp.send(null);
		}
		catch(e)
		{
			alert(e);
		}
	}
	
	function funcionAjaxXML_addResponse(url, parametros)
	{
		//alert(url);
		_pub_xmlHttp = GetXmlHttpObject();
		url = url + "?"+ parametros;
		url = url+"&sid="+Math.random();
		_pub_xmlHttp.onreadystatechange = stateChangedXML_addResponse;
		_pub_xmlHttp.open("GET",url,true);
		_pub_xmlHttp.send(null);
	}
	
	function funcionAjax(url, parametros, lugar, lugarStatus)
	{
		//alert(url);
		document.getElementById(lugar).style.background = "url(images/ajax-loader.gif) no-repeat center";
		_lugarResultado = lugar;
		_pub_xmlHttp = GetXmlHttpObject();
		url = url + "?"+ parametros;
		url = url+"&sid="+Math.random();
		_pub_xmlHttp.onreadystatechange = stateChanged;
		_pub_xmlHttp.open("POST",url,true);
		_pub_xmlHttp.send(null);
	}
	
	function stateChangedFunctions()
	{ 
		if (_pub_xmlHttp.readyState==4 || _pub_xmlHttp.readyState=="complete")
		{ 
			try
			{
				var response = _pub_xmlHttp.responseText;
				setTimeout("eval('" + response + "');", 500);
			}
			catch(error){	}
		} 
	}
	
	function clearStatus()
	{
		if (_lugarStatus != '')	
		{		
			setTimeout('document.getElementById(_lugarStatus).innerHTML = "";', 500);
		}
	}
	
	function stateChanged() 
	{ 
		if (_pub_xmlHttp.readyState==4 || _pub_xmlHttp.readyState=="complete")
		{ 
			try
			{
				try
				{
					if (_lugarStatus != '')	{	document.getElementById(_lugarStatus).innerHTML = "";	}
				}	catch (e)	{	}
//				document.getElementById(_lugarResultado).innerHTML = _pub_xmlHttp.responseText;
				document.getElementById(_lugarResultado).style.background = "none";
				setTimeout("document.getElementById(_lugarResultado).innerHTML = _pub_xmlHttp.responseText;", 500);
			}
			catch(error){	}
		} 
	}

	function GetXmlHttpObject()
	{
		var xmlHttp=null;
		try
		{
			// Firefox, Opera 8.0+, Safari
			xmlHttp=new XMLHttpRequest();
		}
		catch (e)
		{
			// Internet Explorer
			try			{	xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");	}
			catch (e)	{	xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");	}
		}
		return xmlHttp;
	}
	
	function cargarXML(archivoXML)
	{
		var xmlDoc;
		try //Internet Explorer
		{
			xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		}
		catch(e)
		{
			try //Firefox, Mozilla, Opera, etc.
			{
				xmlDoc=document.implementation.createDocument("","",null);
			}
			catch(e) {	alert(e.message);	}
		}
		try 
		{
			xmlDoc.async=false;
			xmlDoc.load(archivoXML);
			return xmlDoc;
		}
		catch(e) {	alert(e.message);	}
		return (null);
	}
	
	function stateChangedXML()
	{
		if (_pub_xmlHttp.readyState==4 || _pub_xmlHttp.readyState=="complete")
		{ 
			try
			{
				var xmlDoc;
				var lugar;
				var content;
				var lugarId;
				var funcion;
				var ejecutar;
				var x;
				xmlDoc = _pub_xmlHttp.responseXML.getElementsByTagName('resultado')[0].childNodes;
				
				lugar = _pub_xmlHttp.responseXML.getElementsByTagName("lugar");
				content = _pub_xmlHttp.responseXML.getElementsByTagName("content");
				//funcion = _pub_xmlHttp.responseXML.getElementsByTagName("funcion");
				
				for (var x=0; x<lugar.length; x++)
				{
					lugarId = lugar[x].childNodes[0].nodeValue;
					try
					{
					if (navigator.appName == 'Microsoft Internet Explorer')	
					{	
						document.getElementById(lugarId).innerHTML = content[x].childNodes[0].nodeValue;	
					}
					else
					{	
						document.getElementById(lugarId).innerHTML = content[x].childNodes[1].nodeValue;
					}
					}
					catch(e1)
					{
						alert(e1);
					}
				}
				return false;
				/*
				if (funcion.length > 0)
				{
					for (var x=0; x<funcion.length; x++)	{	ejecutar = funcion[x].childNodes[0].nodeValue;	eval(ejecutar);	}
				}
				*/
			}	catch(error){	alert(error);	}
		} 
	}