/*
*Esta libreria es una libreria AJAX creada por Javier Mellado con la inestimable
*colaboracion de Beatriz Gonzalez.
*descargada del portal AJAX Hispano http://www.ajaxhispano.com
*contacto javiermellado@gmail.com
*
*Puede ser utilizada, pasada, modificada pero no olvides mantener 
*el espiritu del software libre y respeta GNU-GPL
*/

function creaAjax(){
  var objetoAjax=false;
 
 
  try {
   /*Para navegadores distintos a internet explorer*/
   objetoAjax = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
   try {
     /*Para explorer*/
     objetoAjax = new ActiveXObject("Microsoft.XMLHTTP");
     } 
     catch (E) {
     objetoAjax = false;
   }
  }

  if (!objetoAjax && typeof XMLHttpRequest!='undefined') {
   objetoAjax = new XMLHttpRequest();
  }
  return objetoAjax;
}

 function FAjax (url,capa,valores,metodo,capaMsg,src)
{
   var ajax=creaAjax();
   var capaContenedora = document.getElementById(capa);
   var Resultado
   var etiqueta ="Control.-";
   
   
  // if (document.getElementById('divMsg').innerHTML.indexOf(""Control"")> - 1)
  // {
//	   controlFoco="true";
//	  	src.focus();	
 //  } 
/*Creamos y ejecutamos la instancia si el metodo elegido es GET*/
  if (metodo.toUpperCase()=='GET'){

    capaContenedora.innerHTML = "";
    ajax.open ('GET', url, true);
    ajax.onreadystatechange = function() {
		
         if (ajax.readyState==1) {
		 
                 //capaContenedora.innerHTML="<font face='Arial' >cargando......</font>";
				 document.getElementById(capaMsg).innerHTML='<p align=left>Espere...actualizando registro.. ';
         }
         else if (ajax.readyState==4){
            if(ajax.status==200){ 
   
				  Resultado =  ajax.responseText;
				  //Modificacion Control de errores: Comprobar si se ha devuelto la palabra clave "Control.-"
				  if (Resultado.indexOf(etiqueta)> - 1){
					     	
					// si se le ha pasado el objeto que ha invocado el evento, para en caso de error retornar el foco
						 if (src != null) {
							controlFoco="true"; //Control para al devolver el foco y anular el lostfoco del elemento actual
							src.value=0;
							src.focus();
							
						 }	 	
						 // Devolver error en capa si se le ha pasado 
						if  (document.getElementById(capaMsg) != null){
							document.getElementById(capaMsg).innerHTML= '<p align=left>' + Resultado; 	
						}	

				  }	
				  //Si no hay error devuelve el resultado en al capa de contenido
	 			  else
				  {  
	                 controlFoco="false"; //bandera para que se dispare el lostfoco
					 document.getElementById(capa).innerHTML= Resultado; 
					 //Si se le ha pasado una capa de msg , ponerla en blanco
					 if  (document.getElementById(capaMsg) != null)	 document.getElementById(capaMsg).innerHTML='';
					 
                  }   

            }
            else if(ajax.status==404)
                 {

                     capaContenedora.innerHTML = "La direccion no existe";
                 }
                 else
                 {
                     capaContenedora.innerHTML = "Error: " + ajax.status;
                 }
        }
    }
    ajax.send(null);
    return
}
}




