//variables globales
	var ajax = iniciaAJAX();		

//***********************************************************************************		
		//Realiza una peticion al objeto XMLHTTPRequest para que la procese asincronamente
		function peticionAJAX (funcion,cadena)
		{
			//Mostrar animacion Procesando peticion...
				this.showProcessingImage();
			//nuevo objeto AJAX
				ajax = iniciaAJAX();
			//Prepara la funcion
				ajax.onreadystatechange = funcion;
			//Peticion de registros a PHP
				ajax.open("POST",cadena,true);
				ajax.send(null);				
		}
//***********************************************************************************		
		//Realiza una peticion al objeto XMLHTTPRequest para que la procese asincronamente
		function peticionAJAXget (funcion,cadena)
		{
			//nuevo objeto AJAX
				ajax = iniciaAJAX();
			//Prepara la funcion
				ajax.onreadystatechange = funcion;
			//Peticion de registros a PHP
				ajax.open("GET",cadena,true);
				ajax.send(null);				
		}
//***********************************************************************************		
		//Realiza una peticion al objeto XMLHTTPRequest para que la procese asincronamente
		function peticionAJAXsync (cadena)
		{
			//nuevo objeto AJAX
				ajax = iniciaAJAX();
			// NO Prepara nada de funcion
				//ajax.onreadystatechange = funcion;   YA NO SE NECESITA
			//Peticion de registros a PHP
				ajax.open("POST",cadena,false);
				ajax.send(null);				
		}
//***********************************************************************************		
		//crea el objeto XMLHTTPRequest para que procesos asincronos
		function iniciaAJAX()
		{
			var ajax;
			try	{
				// Opera 8.0+, Firefox, Safari
				ajax = new XMLHttpRequest();
			}
			catch (e)	{
				try	{
					// Internet Explorer Browsers
					ajax = new ActiveXObject("Msxml2.XMLHTTP");			
				}
				catch(e)	{
					try	{
						ajax = new ActiveXObject("Microsoft.XMLHTTP");
					}
					catch(e)	{
						// El browser no soporta AJAX
						alert("Su navegador no soporta AJAX!");
						ajax = false;
					}
				}
			}
			return ajax;
		}		
//***********************************************************************************				
		function peticionAJAX2 (cadena,funcionExito,funcionFracaso)
		{		
			//AJAX BD...		
				//FUNCION MANEJADORA		
					//maneja la respuesta de ajax al ABRIR MODELO
					var manejaRespuesta = function() {
						//Cuando cambie el estado del objeto XMLHTTP...
						//si el estado es 'listo' - Los registros ya llegaron desde PHP
						if(ajax.readyState == 4)	{
							//ON ERROR: 
								if(ajax.status!=200){//Algo falló
									alert("Error al realizar la petición al servidor, verifique su conexion...")
									//Cerrar cuadro de dialogo ABRIR
										if(funcionFracaso!=null)	funcionFracaso();										
										return;
								}

							//PROCESAR:
								if(funcionExito!=null)	funcionExito();
						}
					};		
				//PETICION
					//AJAX: Peticion de procesos del modelo
						peticionAJAX(manejaRespuesta,cadena);
			//AJAX BD... FIN
		}




// 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
}



