// Documento JavaScript
// Esta función cargará las paginas
function llamarasincrono(url, id_contenedor){
var pagina_requerida = false
if (window.XMLHttpRequest) {// Si es Mozilla, Safari etc
pagina_requerida = new XMLHttpRequest()
} else if (window.ActiveXObject){ // pero si es IE
try {
pagina_requerida = new ActiveXObject("Msxml2.XMLHTTP")
} 
catch (e){ // en caso que sea una versión antigua
try{
pagina_requerida = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
pagina_requerida.onreadystatechange=function(){ // función de respuesta
cargarpagina(pagina_requerida, id_contenedor)
}
pagina_requerida.open('GET', url, true) // asignamos los métodos open y send
pagina_requerida.send(null)
}
// todo es correcto y ha llegado el momento de poner la información requerida
// en su sitio en la pagina xhtml
function cargarpagina(pagina_requerida, id_contenedor){
if (pagina_requerida.readyState == 4 && (pagina_requerida.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(id_contenedor).innerHTML=pagina_requerida.responseText
}




function ajax()
	{
	var args = ajax.arguments;
	switch (args[0])
		{
		case "load":
		if (document.getElementById) {
			var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
			}
			if (x)
				{x.onreadystatechange = function()
					{
					 if (x.readyState == 4 && x.status == 200)
						{el = document.getElementById(args[2]);
						 if (x.responseText.length>0) {el.innerHTML = x.responseText;}
						 document.body.style.cursor = 'default';
						 // funcion especial
						 if (args[3])
						 	{if (typeof(args[3])=="function") {args[3](x.responseText);}
						 	 else {eval(args[3]);}
						 	}
						 // ejecutamos javascript devuelto
						 var re = /<script\b.*?>([\s\S]*?)<\//ig;
						 var match;
						 while (match = re.exec(x.responseText)) {eval(match[1]);}					 
						}	
					}
				document.body.style.cursor = 'wait';
				lista=args[1].split("?");
				url=lista[0] + '?rand=' + Math.random();
				parametros = lista[1];	
				x.open("POST", url, true);
				x.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				x.send(parametros);
				}
			break;		

		case "save":
		if (document.getElementById) {
			var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
			}
			if (x)
				{x.onreadystatechange = function()
					{if (x.readyState == 4 && x.status == 200)
						{document.body.style.cursor = 'default';
						 // funcion especial
						 if (args[3])
						 	{if (typeof(args[3])=="function") {args[3](x.responseText);}
						 	 else {eval(args[3]);}
						 	}
						 // ejecutamos javascript devuelto
						 var re = /<script\b.*?>([\s\S]*?)<\//ig;
						 var match;
						 while (match = re.exec(x.responseText)) {eval(match[1]);}								 
						}	
					}
				document.body.style.cursor = 'wait';
				lista=args[1].split("?");
				url=lista[0] + '?rand=' + Math.random();
				parametros = lista[1];	
				x.open("POST", url, true);
				x.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				x.send(parametros);
				}
			break;		
		}		
	}





