function IsNumeric(sText)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
   }

function validarCIF(texto){ 
         
        var pares = 0; 
        var impares = 0; 
        var suma; 
        var ultima; 
        var unumero; 
        var uletra = new Array("J", "A", "B", "C", "D", "E", "F", "G", "H", "I"); 
        var xxx; 
         
        texto = texto.toUpperCase(); 
         
        var regular = new RegExp(/^[ABCDEFGHKLMNPQS]\d\d\d\d\d\d\d[0-9,A-J]$/g); 
         if (!regular.exec(texto)) return false; 
              
         ultima = texto.substr(8,1); 

         for (var cont = 1 ; cont < 7 ; cont ++){ 
             xxx = (2 * parseInt(texto.substr(cont++,1))).toString() + "0"; 
             impares += parseInt(xxx.substr(0,1)) + parseInt(xxx.substr(1,1)); 
             pares += parseInt(texto.substr(cont,1)); 
         } 
         xxx = (2 * parseInt(texto.substr(cont,1))).toString() + "0"; 
         impares += parseInt(xxx.substr(0,1)) + parseInt(xxx.substr(1,1)); 
          
         suma = (pares + impares).toString(); 
         unumero = parseInt(suma.substr(suma.length - 1, 1)); 
         unumero = (10 - unumero).toString(); 
         if(unumero == 10) unumero = 0; 
          
         if ((ultima == unumero) || (ultima == uletra[unumero])) 
             return true; 
         else 
             return false; 

    } 

function enviaFormDomiciliacion(){
	var mensaje='';
	var numerror=false;
	var numcuenta;
	var errorCIF=false;
	var errorNIF=false;
	
	if (document.frmDomiciliacion.txtNIF.value == ''){
		mensaje += 'El Campo NIF/CIF es obligatorio\n';
	}
	else{
		//alert("cif: " + validarCIF(document.frmDomiciliacion.txtNIF.value));
		//alert("nif: " + nifCorrecto(document.frmDomiciliacion.txtNIF.value));
		if (document.frmDomiciliacion.stipo.selectedIndex ==0){
			mensaje += "Debe seleccionar un tipo de identificación fiscal\n";
		}
		else{
			switch (document.frmDomiciliacion.stipo.selectedIndex) {
				case 1:
					if (nifCorrecto(document.frmDomiciliacion.txtNIF.value.toUpperCase()) != 0){
								mensaje +='NIF Incorrecto\n';
							}	
					break;
				case 2:
					if (validarCIF(document.frmDomiciliacion.txtNIF.value.toUpperCase()) == false){
								mensaje +='CIF Incorrecto\n';
							}				
					break;
				}	
		}
	/*	if (validarCIF(document.frmDomiciliacion.txtNIF.value) == false){
			errorCIF = true;
		}
		if (nifCorrecto(document.frmDomiciliacion.txtNIF.value) != 0){
			errorNIF = true;
		}
		alert("errorCIF: " + errorCIF);
		alert("errorNIF: " + errorNIF);
		if ((errorNIF) || (errorNIF && errorCIF)){
				mensaje +='NIF/CIF Incorrecto 1\n';	

		}
		*/
	}
	/*Validamos el nº de cuenta*/
	if ((document.frmDomiciliacion.txtEntidad.value == '') || (document.frmDomiciliacion.txtOficina.value == '') || (document.frmDomiciliacion.txtdc.value == '') || (document.frmDomiciliacion.txtcuenta.value=='')){
		mensaje += 'Debe indicar todos los valores del nº de cuenta\n';
	}
	else//Comprobamos el número de digitos
	{
		if ((document.frmDomiciliacion.txtEntidad.value.length !=4) || (document.frmDomiciliacion.txtOficina.value.length !=4) || (document.frmDomiciliacion.txtdc.value.length !=2) || (document.frmDomiciliacion.txtcuenta.value.length !=10)){
			numerror = true;
		}	
		if (numerror){
			mensaje += 'Número de cuenta incorrecto\n';	
		}
		else{//comprobamos que son numeros
			numcuenta = document.frmDomiciliacion.txtEntidad.value + document.frmDomiciliacion.txtOficina.value + document.frmDomiciliacion.txtdc.value + document.frmDomiciliacion.txtcuenta.value;
			if (IsNumeric(numcuenta) == false) {
				mensaje+='El número de cuenta debe ser numérico';
			}
		}
	}
	
	if (mensaje!=''){
		alert(mensaje);
	}
	else{
		document.frmDomiciliacion.submit();
	}
}

function validaFormContactar(){
	var mensaje = '';
	
		document.frmContactar.submit();
}

