
// ------------------------------------------------------------------------
//  Script realizado por:
//             Carles Martínez Rius (c) '2007
// 		info ARROBA calaix.net
//  No se permite la copia, distribución o modificación de
//  este código sin la obtención de un documento de conformidad
//  firmado por el autor. Posteriormente al citado procedimiento legal
//  será necesario indicar la fuente, y el autor del citado código en cada
//  código en el que sea utilizado.
// ------------------------------------------------------------------------

	
	var nav = (navigator.appName).search("Microsoft");

	//--------- AJAX ---------------------------------
	var pagina_requerida;
	function Ajax_Open (url, funcDestino)
	{
		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) { }
			} //try_catch
		} else {
			alert("Su navegador no soporta AJAX. Por favor, actualícelo a la última versión.");
			return false;
		} //IF_ELSEIF_ELSE

		eval("pagina_requerida.onreadystatechange = function () { " + funcDestino + "; }");
		pagina_requerida.open ('GET', url, true); // asignamos los métodos open y send
		pagina_requerida.send (null);
	} //function

	function Ajax_End() {
		if (pagina_requerida.readyState == 4 && pagina_requerida.status == 200)
		{
			alert(pagina_requerida.responseText);
			QuadreMinimitza();
			Dialog_Close();
		} else if (pagina_requerida.status == 404) {
			alert("Destino de datos incorrecto");
			Dialog_Close();
		} else if (pagina_requerida.readyState == 4 && pagina_requerida.status!= 404 && pagina_requerida.status!= 200) {
			alert("Error " + pagina_requerida.status + "! Por favor, inténtelo de nuevo.");
			Dialog_Close();
		} //if_elseif
	} //end_function_Ajax_End()

	var AJAXFormRequest;
	function Ajax_SendForm (url, formname, method)
	{
		var i;
		var RequestVars="";
		var formMethod;
		eval ("var formObj = document." + formname);
		
		for (i=0; i<formObj.elements.length; i++) {
			if ( RequestVars.length>0 ) { RequestVars += "&"; }
			RequestVars += formObj.elements[i].name;
			RequestVars += "=" + encodeURI(formObj.elements[i].value);
		} //FOR

		if (window.XMLHttpRequest)
		{
			// Si es Mozilla, Safari etc
			AJAXFormRequest = new XMLHttpRequest ();
		} else if (window.ActiveXObject) {
			// pero si es IE
			try {
				AJAXFormRequest = new ActiveXObject ("Msxml2.XMLHTTP");
			} catch (e) {
				// en caso que sea una versión antigua
				try {
					AJAXFormRequest = new ActiveXObject ("Microsoft.XMLHTTP");
				} catch (e) { }
			} //try_catch
		} else {
			alert("Su navegador no soporta AJAX. Por favor, actualícelo a la última versión.");
			return false;
		} //IF_ELSEIF_ELSE

		AJAXFormRequest.onreadystatechange = function ()
		{
			// función de respuesta
			AJAX_Form_End();
		} //end_function

		//Averigua el mètode
		if ( method.toUpperCase()=="POST" ) { formMethod="POST"; } else { formMethod="GET"; }
		
		AJAXFormRequest.open(formMethod, url, true); // asignamos los métodos open y send
		AJAXFormRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		AJAXFormRequest.setRequestHeader("Content-length", RequestVars.length);
		AJAXFormRequest.setRequestHeader("Connection", "close");
		AJAXFormRequest.send(RequestVars);
	} //end_function_Ajax_SendForm()

	function AJAX_Form_End() {
		try {
			if (AJAXFormRequest.readyState == 4 && AJAXFormRequest.status == 200)
			{
				CapaLoadingContent(AJAXFormRequest.responseText);
			} else if (AJAXFormRequest.status == 404) {
				CapaLoadingContent("Destino de datos incorrecto");
			} else if (AJAXFormRequest.readyState == 4 && AJAXFormRequest.status!= 404 && AJAXFormRequest.status!= 200) {
				CapaLoadingContent("Error " + pagina_requerida.status + "! Por favor, inténtelo de nuevo.");
			} //if_elseif
		} catch (e) {}
	} //end_function_Ajax_End()


	function CapaContent(capaname, content) {
		if (nav==-1) {
			CapaLoading = document.getElementById(capaname);
		} else {
			eval("CapaLoading = document.all." + capaname);
		} //IF_ELSE
		CapaLoading.innerHTML = content;
	} //end_function_CapaContent()

	var ReadLayerSrc_capaname="";
	var ImgLoading = new Image();
	ImgLoading.src = "loading.gif";
	function ReadLayerSrc_SetContent() {
		try {
			if (pagina_requerida.readyState == 4 && pagina_requerida.status == 200)
			{
				CapaContent(ReadLayerSrc_capaname,pagina_requerida.responseText);
			} else if (pagina_requerida.status == 404) {
				CapaContent(ReadLayerSrc_capaname,"Destino de datos incorrecto");
			} else if (pagina_requerida.readyState == 4 && pagina_requerida.status!= 404 && pagina_requerida.status!= 200) {
				CapaContent(ReadLayerSrc_capaname,"Error " + pagina_requerida.status + "! Por favor, inténtelo de nuevo.");
			} //if_elseif
		} catch (e) {}
	} //end_function_ReadLayerSrc_SetContent()

	function ReadLayerSrc(capaname, url) {
		ReadLayerSrc_capaname = capaname;
		CapaContent(capaname,"<center><br><br><img src='loading.gif' vspace='5'><br>Cargando...</center>");
		Ajax_Open(url, "ReadLayerSrc_SetContent()");
	} //end_function_ReadLayerSrc()
