// JavaScript Document
function validar_cif(cif)
{
  par = 0;
  non = 0;
  letras="ABCDEFGHKLMNPQS";
  let=cif.charAt(0);

  if (cif.length!=9)
  {
    return (11);
  }
	
  if (letras.indexOf(let.toUpperCase())==-1)
  {
    return (12);
  }
	
  for (zz=2;zz<8;zz+=2)
  {
    par = par+parseInt(cif.charAt(zz));
  }
	
  for (zz=1;zz<9;zz+=2)
  {
    nn = 2*parseInt(cif.charAt(zz));
      
	if (nn > 9) nn = 1+(nn-10)
	{
      non = non+nn;
	}
  }
	
  parcial = par + non;
  control = (10 - ( parcial % 10));
	
  if (control==10)
  {
	control=0;
  }
	
  if (control!=cif.charAt(8))
  {
    return (13);
  }
  
  return(0);
}

function validar_nif(nif)
{
  dni=nif.substring(0,nif.length-1);
  let=nif.charAt(nif.length-1);
  
  if (!isNaN(let))
  {
    return (21);
  }
  else
  {
    cadena="TRWAGMYFPDXBNJZSQVHLCKET";
    posicion = dni % 23;
    letra = cadena.substring(posicion,posicion+1);
	
    if (letra!=let.toUpperCase())
    {
      return (22);
    }
  }
  
  return(0);
}

function validar_nie (nie)
{
  if (nie.length!=10)
  {
	return(31);
  }
  
  var letra = nie.substring(0, 1);
  var numero = nie.substring(1, nie.length);
  
  if (letra.toUpperCase() != "X")
  {
	return(32);
  }
  
  return(validar_nif(numero))
}