

 function validar(formulario,tipo) {
if( validarformato(formulario.contacto,"no",0,4)==false )
{
 return false;
}  
if(checkEmail(formulario.contacto)==false)
{
 return false;
}
if( validarformato(formulario.asunto,"no",0,3)==false )
{
 return false;
}
if(validarformato(formulario.mensaje,"no",0,9)==false )
{
 return false;
}

document.forms[0].submit();
}
 function validarformato(variable,cadena,mirar,longitud) 
 {
 cadena1 = variable.name;
  cadena1=cadena1.replace("_" ," ");
    cadena1=cadena1.replace("_" ," ");

// alert (reemplazo);
 //alert(variable.value);
 //alert(variable.value.length);
 if (variable.value.length == 0 && mirar == 1)
  {
  return true;
  }
 if (variable.value.length < longitud) {
    alert("Escriba por lo menos " + longitud + " caracteres en el campo "+ cadena1);
    variable.focus();
    return (false);
  }
   
 if (cadena == "si"){
  var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ.," + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
  var checkStr = variable.value;
  var allValid = true; 
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i); 
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) { 
      allValid = false; 
      break; 
    }
  }
  if (!allValid) { 
    alert("Escriba sólo letras en el campo "+cadena1); 
    variable.focus(); 
    return (false); 
  }}
   if (cadena == "numerico"){
  var checkOK = "0123456789- " ;
  var checkStr = variable.value;
  var allValid = true; 
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i); 
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) { 
      allValid = false; 
      break; 
    }
  }
  if (!allValid) { 
    alert("Escriba sólo números en el campo "+cadena1); 
    variable.focus(); 
    return (false); 
  }}  

 return true
 }
function checkEmail(valor) {
if (valor.value == 0) return true;
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor.value) )
  {
   return true;
  } else {
     alert("La dirección de email " + valor.value + " es incorrecta.") 
valor.focus();
   return (false);
  }
 }
   function ValidaCIF2(F) 
{
 var allValid = true; 

   var checkOK = "ABCDEFGHKLMNPQS";
  var checkStr = F.substring(0,1).toUpperCase();
 
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i); 
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) { 
      allValid = false; 
      break; 
    }
    }
    
   var checkOK = "0123456789";
  var checkStr = F.substring(1,8).toUpperCase();

  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i); 
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) { 
      allValid = false; 
      break; 
    }
    }
  var checkOK = "0123456789ABCDEFGHIJ";
  var checkStr = F.substring(8,9).toUpperCase();
 
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i); 
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) { 
      allValid = false; 
      break; 
    }
    }
  if (!allValid) { 
    alert("El CIF introducido no es valido"); 
     formulario.CIF.focus(); 
    return false; 
  }
  return true;
}

function averigua(nif)
{
pnif = nif.substring(0,8)
cadena="TRWAGMYFPDXBNJZSQVHLCKET"
posicion = pnif % 23
//falta validar numero
//alert( cadena[posicion] )
return cadena[posicion];
//alert(letra.value)
//document.write("Nif: "+formulario.NIF.value+" - "+letra[posicion+1])
}


 