function nuevoAjax()
{ 
	/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
	lo que se puede copiar tal como esta aqui */
	var xmlhttp=false; 
	try 
	{ 
		// Creacion del objeto AJAX para navegadores no IE
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	catch(e)
	{ 
		try
		{ 
			// Creacion del objet AJAX para IE 
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
		} 
		catch(E) { xmlhttp=false; }
	}
	if (!xmlhttp && typeof XMLHttpRequest!="undefined") { xmlhttp=new XMLHttpRequest(); } 

	return xmlhttp; 
}

//******************************************************************************************************************************//


function eliminaEspacios(cadena)
{
	// Funcion para eliminar espacios delante y detras de cada cadena
	while(cadena.charAt(cadena.length-1)==" ") cadena=cadena.substr(0, cadena.length-1);
	while(cadena.charAt(0)==" ") cadena=cadena.substr(1, cadena.length-1);
	return cadena;
}

//******************************************************************************************************************************//
function validaIngreso_cliente(valor)
{
	/* Funcion encargada de validar lo ingresado por el usuario. Se devuelve TRUE en caso de ser valido, FALSE en caso contrario */
	var reg=/(^[a-zA-Z0-9-_]{4,40}$)/;
	if(reg.test(valor)) return true;
	else return false;
}

//******************************************************************************************************************************//

function validaIngreso_correo(valor)
{
	/* Funcion encargada de validar lo ingresado por el usuario. Se devuelve TRUE en caso de ser valido, FALSE en caso contrario */
	var reg=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
	if(reg.test(valor)) return true;
	else return false;
}

//******************************************************************************************************************************//

function ajax_libreria__chequear_campos(evento,pagina_destino)
{
    if(evento=="verificacion_usuario_email_cliente")
    {
        var input_usuario=document.getElementById("txt_usuario");
		var input_email=document.getElementById("txt_correo");
        var boton=document.getElementById("boton_1");
        var valor_usuario=input_usuario.value;
        var valor_email=input_email.value;		

        // Elimino espacios por delante y detras de lo ingresado por el usuario
        valor_usuario=eliminaEspacios(valor_usuario);
		valor_email=eliminaEspacios(valor_email);
        // Si el ingreso es invalido...
        if(!validaIngreso_cliente(valor_usuario) ) 
        {
            alert ("El Usuario ingresado contiene caracteres inválidos o esta vacio");
            frm_informacion.txt_usuario.focus();
            frm_informacion.txt_usuario.style.background="#FFF0F0";
			return false;
        }
		
        if(!validaIngreso_correo(valor_email) ) 
        {
            alert ("El Email ingresado contiene caracteres inválidos o esta vacio");
            frm_informacion.txt_correo.focus();
            frm_informacion.txt_correo.style.background="#FFF0F0";
			return false;			
        }
		

        // Deshabilito inputs y botones para evitar dobles ingresos
        boton.disabled=true; 
        input_usuario.disabled=true;
		input_email.disabled=true;
        // input.value=accion;
        valores =valor_usuario+'|'+valor_email; 
        var ajax=nuevoAjax();
        ajax.open("POST", pagina_destino, true);
        //ajax.open("GET", "ejemploajax2.php?t1="+t1+"&t2="+t2,true);
        ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        ajax.send(evento+"="+valores);
        
        ajax.onreadystatechange=function()
        {
            if (ajax.readyState==4)// Todo va bien, respuesta recibida
            {
                boton.disabled=false;
				input_usuario.disabled=false;
				input_email.disabled=false;
                // Muestro el mensaje enviado desde el servidor
                document.getElementById("mensaje_correo").innerHTML = ajax.responseText;
            }
        }
    }
    

}
/**
* //Funcion que permite conservar displayado el div de una familia determinada mediante una sesion
*/
            
function ajax_libreria__mostrar_div_subfamilias(evento,pagina_destino,varses)
{
 
    var ajax=nuevoAjax();
    ajax.open("POST", pagina_destino, true);
    //ajax.open("GET", "ejemploajax2.php?t1="+t1+"&t2="+t2,true);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.send(evento+"="+varses);  
    ajax.onreadystatechange=function()
    {
        if (ajax.readyState==4)// Todo va bien, respuesta recibida
        {
            document.getElementById("div_ficticio").innerHTML = ajax.responseText;
        }
    }       
}	






