//var t32_126           = /^([a-zA-Z]|\d|[ !"#$%&'()*+,\-.\/:;<=>?@[\]^_`{|}~])+$/
var tletraonumero       = /^([a-zA-Z]|\d|[.\-_@])+$/
var tletraonumeroospace = /^([a-zA-Z]|\d| |[().,])+$/
var tnumero             = /^\d+$/
var tmail               = /^.+\@.+\..+$/
var meses_caracter,meses_integer;

var ns4=document.layers?true:false;

meses_caracter = new Array("ENE","FEB","MAR","ABR","MAY","JUN","JUL","AGO","SEP","OCT","NOV","DIC");            
meses_integer  = new Array("01","02","03","04","05","06","07","08","09","10","11","12");            

  function MM_openBrWindow(theURL,winName,features) { //v2.0
    window.open(theURL,winName,features);
  }

  function MM_reenviaWindow(theURL,winName,features) {
    if (features!="") {
       document.reenvia.target = "reenvia";
       wid = window.open('', "reenvia",features);
       document.reenvia.submit();
    } else {
       // El nombre Browser se le asigna al navegador en general.js MM_openIdWindow
       document.reenvia.target = "browser";
       document.reenvia.submit();
    }
    window.close();

    if (features!="") {
     wid.focus();
    }
  }

  function altamodificacion() {
    window.open('','altamodificacion','scrollbars=yes,width=580,height=327,top=215,left=115,screenX=215,screenY=115');
    document.reenvia.target = "altamodificacion";
    document.reenvia.submit();
    window.close();
  }

  function inicio() {
      document.envia.usuario.focus();
  }

  function MM_preloadImages() { //v3.0
    var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
      var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
      if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
  }

  function MM_swapImgRestore() { //v3.0
    var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
  }

  function MM_findObj(n, d) { //v3.0
    var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
      d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
  }

  function MM_swapImage() { //v3.0
    var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
     if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
  }

  function comprueba_nulos(tipo) 
  {
    document.envia.tipo.value = tipo;
    if (tipo=="1" || tipo=="3" || tipo=="4") {
      if (document.envia.usuario.value=="") {
        alert("El nombre es obligatorio.");
        document.envia.usuario.focus();
        return;
      }
      else if (document.envia.usuario.value.length < 5) {
        alert("El nombre debe tener una longitud superior a 4 carácteres.");
        document.envia.usuario.focus();
        return;
      }
      if (tipo=="1" || tipo=="3") {      
        if (document.envia.contrasena.value=="") {
          alert("La contraseña es obligatoria.");
          document.envia.contrasena.focus();
          return;
        }
        else if (document.envia.contrasena.value.length < 5) {
          alert("La contrasena debe tener una longitud superior a 4 carácteres.");
          document.envia.contrasena.focus();
          return;
        }
      }
    }
    if (tipo=="4") {
      document.olvida.usuario.value = document.envia.usuario.value;
      document.olvida.submit();
    } else {
      document.envia.submit();
    }
  }

//////////////////////////////////////////////////////////////////////////
// Alta
//////////////////////////////////////////////////////////////////////////

function enviarAlta() 
{
	var ssexo = "N";
    
   // SEXO. CAMPO OBLIGATORIO
   for (var i = 0; i < document.alta.sexo.length; i++) 
   {
   	if (document.alta.sexo[i].checked==true) 
   	{
        ssexo = "S";
      }
   }
   
   if (document.alta.cb_boletin.checked)
      document.alta.boletin.value = "S";
   else
   	document.alta.boletin.value = "N";

    // VALIDACION DE LOSCAMPOS OBLIGATORIOS
    if (!valida_usuario()) return;
    if (!valida_contrasena()) return;
    if (!valida_contrasena2()) return;
    if (!valida_email()) return;
    if (document.alta.pais.options[document.alta.pais.selectedIndex].text=="") 
    {
      alert("El pais es obligatorio.");
      document.alta.pais.focus();
      return;
    }
    if (!valida_cp(document.alta.cp)) return;
    if (ssexo == "N") 
    {
      alert("El sexo es obligatorio.");
      document.alta.sexo[0].focus();
      return;
    }
    document.alta.submit();
}
	function enviarIdentificacion() 
  	{
  		if (document.envia.usuario.value=="") 
  		{
        alert("El nombre es obligatorio.");
        document.envia.usuario.focus();
        return;
      }
      else 
      {
      	if (document.envia.usuario.value.length < 5) 
      	{
        		alert("El nombre debe tener una longitud superior a 4 carácteres.");
        		document.envia.usuario.focus();
        		return;
      	}
      }
      if (document.envia.contrasena.value=="") 
      {
      	alert("La contraseña es obligatoria.");
         document.envia.contrasena.focus();
         return;
      }
      else 
      {
      	if (document.envia.contrasena.value.length < 5) 
      	{
      		alert("La contraseña debe tener una longitud superior a 4 carácteres.");
          	document.envia.contrasena.focus();
          	return;
        	}
      }
      document.envia.submit();
  	}

	function enviarOlvido() 
  	{
  		if (document.envia.usuario.value=="") 
  		{
        alert("El nombre es obligatorio.");
        document.envia.usuario.focus();
        return;
      }
      else 
      {
      	if (document.envia.usuario.value.length < 5) 
      	{
        		alert("El nombre debe tener una longitud superior a 4 carácteres.");
        		document.envia.usuario.focus();
        		return;
      	}
      }
      document.envia.olvido.value="olvido";
      document.envia.submit();
  	}


  function valida_usuario() {
    if (document.alta.usuario.value=="") {
      alert("El nombre de usuario es obligatorio.");
      document.alta.usuario.focus();
      return (false);
    }
    else if (document.alta.usuario.value.length < 5) {
      alert("El nombre de usuario debe tener una longitud superior a 4 carácteres.");
      document.alta.usuario.focus();
      return (false);
    }
    else if (!valida_letraonumero(document.alta.usuario)) return (false);
    else if (document.alta.contrasena.value != "" && document.alta.contrasena.value == document.alta.usuario.value) {
      alert("El nombre de usuario no puede ser igual a la contraseña.");
      document.alta.usuario.focus();
      return (false);
    }
    return (true);
  }

  function valida_contrasena() {
    if (document.alta.contrasena.value=="") {
      alert("La contraseña es obligatoria.");
      document.alta.contrasena.focus();
      return (false);
    }
    else if (document.alta.contrasena.value.length < 5) {
      alert("La contrasena debe tener una longitud superior a 4 carácteres.");
      document.alta.contrasena.focus();
      return (false);
    }
    else if (!valida_letraonumero(document.alta.contrasena)) return (false);
    else if (document.alta.usuario.value != "" && document.alta.contrasena.value == document.alta.usuario.value) {
      alert("La contraseña no puede ser igual al nombre de usuario.");
      document.alta.contrasena.focus();
      return (false);
    }
    return (true);
  }
  
  function valida_contrasena2() {
    valida_contrasena();
    if (document.alta.contrasena.value != document.alta.contrasena2.value) {
      alert("La confirmación de la contrasena no es valida.\nIntentelo de nuevo.");
      document.alta.contrasena2.select();
      document.alta.contrasena2.focus();
      return (false);
    }
    else if (!valida_letraonumero(document.alta.contrasena2)) return (false);
    return (true);
  }

  function valida_email() {
    if (document.alta.e_mail.value=="") {
      alert("La direccion de correo electronico es obligatoria.");
      document.alta.e_mail.focus();
      return (false);
    } 
    else if (!valida_mail(document.alta.e_mail)) return (false);
    return (true);
  }

  function valida_cp() {
    if (document.alta.cp.value == "") {
      alert("El código postal es obligatorio.");
      document.alta.cp.focus();
      return (false);
    }
    if (document.alta.cp.value.length < 5) {
      alert("El código postal debe ser al menos de 5 caracteres.");
      document.alta.cp.focus();
      return (false);
    }
    //else if (document.alta.provincia.value != "") {
    //  if ((document.alta.provincia.options[document.alta.provincia.selectedIndex].value != document.alta.cp.value.substring(0,2)) &&
    //     (document.alta.pais.options[document.alta.pais.selectedIndex].value=="42")) {
    //    alert("El código postal no se corresponde con la provincia.");
    //    document.alta.cp.focus();
    //    return (false);
    //  }
    //}
    return (true);
  }

  function valida_caracter(c) {
    if (c.value != "" && !tletraonumeroospace.test(c.value)) {
      alert("El campo solo puede contener dígitos, letras y espacios.");
      c.focus();
      return (false);
    }
    return (true);
  }

  function valida_numero(c) {
    if (c.value != "" && !tnumero.test(c.value)) {
      alert("Campo numérico. El campo solo puede contener dígitos [0-9]");
      c.focus();
      return (false);
    }
    return (true);
  }

  function valida_letraonumero(c) {
    if (!tletraonumero.test(c.value)) {
      alert("El campo no puede contener caracteres especiales.");
      c.focus();
      return (false);
    }
    return (true);
  }

  function valida_mail(c) {
    if (!tletraonumero.test(c.value)) {
      alert("El campo no puede contener caracteres especiales.");
      c.focus();
      return (false);
    }
    if (!tmail.test(c.value)) {
      alert("El formato de direccion de correo electronico es :\n[usuario]@[servidor].[dominio]");
      c.focus();
      return (false);
    }
    return (true);
  }

function fechaValida(fecha1){
 var fecha=fecha1;
 var comprobarfecha=true;
 if (fecha == ''){
  comprobarfecha=true;
 }
 else{
  //Buscamos la primera barrita
  var barra1=fecha.indexOf('/', 0);
  if (barra1 != -1){
   var barra2=fecha.indexOf('/', (barra1+1));
   if (barra2 != -1){        
    if ((isNaN(fecha.substring(0,barra1)) == false) &&
        (isNaN(fecha.substring((barra1+1),barra2)) == false) &&
        (isNaN(fecha.substring((barra2+1),fecha.length)) == false)){
     var dia = parseInt(fecha.substring(0,barra1));
     var mes = parseInt(fecha.substring((barra1+1),barra2));      
     var anno = parseInt(fecha.substring((barra2+1),fecha.length));
     //realizamos la comparacion
     if(fecha.substring(0,barra1).length == 0){
      comprobarfecha=false;
     } else{
      if(fecha.substring((barra1+1),barra2).length == 0){
       comprobarfecha=false;
      } else{
       if(fecha.substring((barra2+1),fecha.length).length == 0){
        comprobarfecha=false;
       } else{
        if (dia > 31) { 
         comprobarfecha=false; 
        } else{
         if (mes>12){
          comprobarfecha=false;
         } else{
          if (dia==31){ 
	   if (!(mes== 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8 || mes == 9 || mes == 12)){
            comprobarfecha = false;
           }
          } else{
           if (dia>29 && mes==2){          
            comprobarfecha=false;   
           } else{
            if (dia==29 && mes==2){  
             if ((anno % 4) != 0){ 
	      comprobarfecha = false;
             }
            }
           }
          }
         }
        }
       }
      }
     }
    } else{
     comprobarfecha = false;
    }
   } else{
    comprobarfecha = false;
   }
  } else{
   comprobarfecha = false;
  }		
 } 
 return comprobarfecha;
}

function valida_fechas(objeto) {
 var f = "";
 var f_tmp = "";
 f_tmp = new String;
 var encontrado = false;
 var dia, mes, anio, cont;

 cont = 0;
 f_tmp = "";
 f = objeto.value;
 if (f != "") {
  for (var i = 0; i <= f.length; i++) {
   if (f.charAt(i) != "/" && f.charAt(i) != "-") {
    f_tmp += f.charAt(i);
   }
   else {
    if (cont == 0) {
     dia = f_tmp;
     f_tmp = "";
     cont++;
    } else if (cont == 1) {
     if (isNaN(f_tmp)) {
      for (j=0;j < 12; j++) {
       if (f_tmp.toUpperCase() == meses_caracter[j]) {
        f_tmp = meses_integer[j];
        encontrado = true;
        j = 12;
       }
      }
     } else {
      encontrado = true;
     }
     if (encontrado == true) {
      mes = f_tmp;
      anio = parseInt(f.substring(i + 1, f.length));
      vc_anio = String(anio);
      if (vc_anio.length == 2 ) {
        anio = parseInt("19"+vc_anio);	
      } else if (vc_anio.length < 4 ) {
       alert("Formato de Fecha erroneo (DD-MM-YYYY).");
       objeto.focus();
       return false;
      }
      i = f.length;
      f_tmp = "";
     } else {
      alert("Formato de Fecha erroneo (DD-MM-YYYY).");
      objeto.focus();
      return false;
     }
    }
   }
  }
  fecha_tmp = String(dia) + "/" + String(mes) + "/" + String(anio); 
  valida = fechaValida(fecha_tmp); 
  dia = String(dia);
  mes = String(mes);
  anio = String(anio);
  if (dia.length < 2) {
   dia = "0" + dia;
  }
  if (mes.length < 2) {
   mes = "0" + mes;
  }
  fecha_tmp = String(dia) + "-" + String(mes) + "-" + String(anio); 
  if (valida == false) { 
   alert("Formato de Fecha erroneo (DD-MM-YYYY).");
   objeto.focus();
   return false;
  }
  else {
   objeto.value = fecha_tmp;
   return true;
  } 
 }
 return true;
}

//////////////////////////////////////////////////////////////////////////
// Modificacion
//////////////////////////////////////////////////////////////////////////


function modificacion(Saludalia) 
{
	if (Saludalia)
	{
		aURL = "/saludaliaNuevo/servlets/registro/formIdentificacion.jsp?mod=1";
	}
	else
	{
		aURL = "/saludaliaNuevo/servlets/registro/formIdentificacion.jsp?mod=1&style=med";
	}
	
    
	if (!ns4) 
	{ 
		location.href=aURL;
	} 
	else 
	{
		location.href=aURL;
	}

}

//Es la modificación desde la ventana general.
function enviarIdentificacionActualizar() {
	
		
		if (document.envia.usuario.value=="") 
  		{
        alert("El nombre es obligatorio.");
        document.envia.usuario.focus();
        return;
      }
      else 
      {
      	if (document.envia.usuario.value.length < 5) 
      	{
        		alert("El nombre debe tener una longitud superior a 4 carácteres.");
        		document.envia.usuario.focus();
        		return;
      	}
      }
      if (document.envia.contrasena.value=="") 
      {
      	alert("La contraseña es obligatoria.");
         document.envia.contrasena.focus();
         return;
      }
      else 
      {
      	if (document.envia.contrasena.value.length < 5) 
      	{
      		alert("La contraseña debe tener una longitud superior a 4 carácteres.");
          	document.envia.contrasena.focus();
          	return;
        	}
      }
   document.envia.mod.value = "1";   
	document.envia.submit();
	
}


//Cuando pulsamos en registrarse.
function registrarse() { 
	
	
	location.href = "formAlta.jsp";
	//window.close();
}

