// VALIDAR CORREO ELECTRONICO.
function validaEmail(email) {
  return (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email));
}


// VALIDA EL NOMBRE DE UN FICHERO.
function validaFichero(fichero) {
  return (/^\w+$/.test(fichero));
}


// VALIDA EL LOGIN QUE SE INTRODUCE COMO NUEVO USUARIO.
function validaLogin(login) {
  return (login.length >= 8 && login.length <= 16);
}


// VALIDA EL PASSWORD QUE SE INTRODUCE COMO NUEVO USUARIO.
function validaPassword(password) {
  return (password.length >= 4 && password.length <= 8);
}


// VALIDA LA ENTRADA DE NUMEROS.
function esNumero(caracter) {
  if (caracter >= "0" && caracter <= "9") {
    return true;
  } else {
    return false;
  }
}


// VALIDA LA ENTRADA DE LETRAS.
function esLetra(caracter) {
  if ((caracter >= "a" && caracter <= "z") || (caracter >= "A" && caracter <= "Z") || (caracter == "ñ") || (caracter == "Ñ")) {
    return true;
  } else {
    return false;
  }
}


// VALIDA EL NO PONER NI ACENTOS NI LA NH.
function validarAcentosNH(valor) {
  patron =/[áéíóúñÑ]/;
  if (patron.test(valor)){
    return false;
    
  } else {
    return true;
  }
}  

// ELIMINA EL ESPACIO INICIAL DE 'S'
function ltrim(s) { 
    return s.replace(/^\s+/, ""); 
} 
 

// ELIMINA EL ESPACIO FINAL DE 'S'
function rtrim(s) { 
    return s.replace(/\s+$/, ""); 
} 
 

// ELIMINA LOS ESPACIOS INICIAL Y FINAL
function trim(s) { 
    return rtrim(ltrim(s)); 
}


// Funcion que muestra error de haberlo.
function mostrar_errores(error){
  document.getElementById("lista_de_erros").innerHTML = error;
  document.getElementById("error").style.display = 'block';
  document.getElementById("error").style.marginBottom='5px';
}


// Funcion que muestra error de haberlo.
function mostrar_errores2(error){
  document.getElementById("lista_de_erros").innerHTML = error;
  document.getElementById("error2").style.display = 'block';
  document.getElementById("error2").style.marginBottom='15px';
}


// Funcion que oculta los errores si se hace, p.e., una carga dinamica de datos.
function ocultar_errores(){
  document.getElementById("lista_de_erros").innerHTML = '';
  document.getElementById("error").style.display = 'none';
}


// FUNCIONES PROPIAS PARA LA IMPLEMENTACION DE EFECTOS EN LA PAG. WEB
function transpON(ID,opacidad,duracion,pasos) {
  new Rico.Effect.FadeTo(ID,opacidad,duracion,pasos);
}

function transpOFF(ID,opacidad,duracion,pasos) { 
  new Rico.Effect.FadeTo(ID,opacidad,duracion,pasos);
}


// FILTRA EL TEXTO EN CUANTO ES PULSADO.
function filtroTexto(e, control, strFormat) {
  valido = false;
  // capturamos el codigo del caracter
  if(document.all) {
    codigoTecla = event.keyCode;
  } else if(document.layers) {
    codigoTecla = e.which;
  } else if(document.getElementById) {
    codigoTecla = (window.Event) ? e.which : e.keyCode;
  }
  // convertimos el codigo del caracter a string
  cadenaTecla = String.fromCharCode(codigoTecla);
  pos = control.value.length;
  letraFiltro = strFormat.charAt(pos);
  switch (letraFiltro) {
    case "0": // Numero entrada obligatoria
      valido = esNumero(cadenaTecla);
      break;
    case "9": // Numero entrada opcional
      valido = esNumero(cadenaTecla) || (cadenaTecla == " ");
      break;
    case "L": // Letra entrada obligatoria
      valido = esLetra(cadenaTecla);
      break;
    case "?": // Letra entrada opcional
      valido = esLetra(cadenaTecla) || (cadenaTecla == " ");
      break;
    case "A": // Numero o Letra entrada obligatoria
      valido = esNumero(cadenaTecla) || esLetra(cadenaTecla);
      break;
    case "a": // Numero o Letra entrada opcional
      valido = esNumero(cadenaTecla) || esLetra(cadenaTecla) || (cadenaTecla == " ");
      break;
    case "C": // Cualquier caracter
      valido = true;
      break;
  }
  // convertimos el codigo del caracter a string
  if (codigoTecla == 0 || codigoTecla == 8 || codigoTecla == 13) {
    valido = true;
  }
  if(valido == false) {
    if(document.all)
      event.returnValue = false;
    else
      return false;
  } else {
    if(document.all)
      event.returnValue = true;
    else
      return true;
  }
}


function filtroCaracteres(e, caracteres) {
  var valido = false;
  var codigoTecla, cadenaTecla;   
  if(document.all) {
    codigoTecla = event.keyCode
  } else if(document.layers) {
    codigoTecla = e.which
  } else if(document.getElementById) {
    codigoTecla = (window.Event) ? e.which : e.keyCode;
  }
  // convertimos el codigo del caracter a string
  cadenaTecla = String.fromCharCode(codigoTecla);
  // convertimos el codigo del caracter a string
  if (codigoTecla == 0 || codigoTecla == 8 || codigoTecla == 13) {
    valido = true;
  } else {
    for(i = 0; i < caracteres.length; i++) {
      if (cadenaTecla == caracteres[i]) valido = true;
    }
  }
  if(document.all)
    event.returnValue = valido;
  else
    return valido;
}


function filtroSoloNumeros(e, control) {
  var valido = false;
  // capturamos el codigo del caracter
  if(document.all) {
    codigoTecla = event.keyCode;
  } else if(document.layers) {
    codigoTecla = e.which;
  } else if(document.getElementById) {
    codigoTecla = (window.Event) ? e.which : e.keyCode;
  }
  // convertimos el codigo del caracter a string
  if (codigoTecla == 0 || codigoTecla == 8 || codigoTecla == 13) {
    valido = true;
  } else {
    cadenaTecla = String.fromCharCode(codigoTecla);
    valido = esNumero(cadenaTecla);
  }
  if(valido == false) {
    if(document.all)
      event.returnValue = false;
    else
      return false;
  } else {
    if(document.all)
      event.returnValue = true;
    else
      return true;
  }
}


function hipoteca_facil() {
  
  var myWin; 
  if(!myWin || myWin.closed){
      myWin = window.open("http://www.asegurelalba.com/include/hipoteca_gratis.php",null,"height=700,width=700,status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=no,top=" + ((screen.height/2)-225) + ",left=" + ((screen.width/2)-275));
  };
  void(0);
}


function imprimir(titulo, fecha, que) {
  
  var myWin; 
  if(!myWin || myWin.closed){
      myWin = window.open("",null,"height=550,width=590,status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=yes,top=" + ((screen.height/2)-225) + ",left=" + ((screen.width/2)-275));
      var contenido = "<html><head><link rel='stylesheet' type='text/css' href='css/ferama.css' media='screen, print' /></head><body onload='window.print();' style='font-size:14px;'><h1 style='font-size:24px;'>" + titulo + "</h1>" + fecha + "<br />" + document.getElementById(que).innerHTML + "</body></html>";
      myWin.document.open();
      myWin.document.write(contenido);
      myWin.document.close();
  };
  void(0);
}


function reemplazar(cadena, original, sustituto) {
  while ((pos = cadena.indexOf(original)) != -1) {
    cadena = cadena.substring(0, pos) + sustituto + cadena.substring(pos + original.length, cadena.length);
  }
  return cadena;
}


function sacarCadenaValores(objSelect) {
  var strValores = "";
  for (i = 0; i < objSelect.length; i++) {
    if (strValores == "") {
      strValores = objSelect.options[i].value;
    } else {
      strValores += "," + objSelect.options[i].value;
    }
  }
  return strValores;
}


function Capa(capa) {
  if(document.layers) return document.layers[capa];                // Si utilizamos NS
  if(document.all) return document.all(capa);                      // Si utilizamos IE
}


function MostrarCapa(capa){
  if(document.layers) document.layers[capa].visibility='show';     // Si utilizamos NS
  if(document.all) document.all(capa).style.visibility='visible';  // Si utilizamos IE
}


function OcultarCapa(capa){
  if(document.layers) document.layers[capa].visibility='hide';     // Si utilizamos NS
  if(document.all) document.all(capa).style.visibility='hidden';   // Si utilizamos IE
}


function cogerElementoPorId(IdElemento) {
  alert("ENTRA");
  if (document.layers) {
    alert("Entra layers");
    //Netscape 4 specific code
    return document.layers[IdElemento];
/*
    pre = 'document.layers';
    post = '';
*/
  }
  if (document.getElementById) {
    alert("Entra getElementById");
    //Netscape 6 specific code
    alert(IdElemento);
    alert(document.getElementById(IdElemento));
    return document.getElementById(IdElemento);
/*
    pre = 'document.getElementById("';
    post = '").style';
*/
  }
  if (document.all) {
    alert("Entra all");
    //IE4+ specific code
    return eval('document.all.' + IdElemento);
/*
    pre = 'document.all.';
    post = '.style';
*/
  }
  return false;
/*
return eval(pre + IdElemento + post);
*/
}