var cadena='';
var minu = "abcdefghijklmnopqrstuvwxyzáéíóúñü. ";
var may = "ABCDEFGHIJKLMNOPQRSTUVWXYZÁÉÍÓÚÑÜ. ";
var blancos = " \t\n\r";
//var dir = /^([a-z]|[A-Z]|[0-9]|á|é|í|ó|ú|ñ|ü|#|\s|\.|-)+$/ //letras, '.' y '-' o vacio y numeros
var telefonicas="0123456789()-+ ";
/////////////////////////////////////////////////////////////////////////////////////////

function prueba()
{	alert("hola");
	return false;
}

////////////////////////////////////////////////////////////////////////////////////////
function isTelephone(s)
{	if (isEmpty(s))
	{	return false;	}
	for(var i=0; i < s.length; i++)
	{	var c=s.charAt(i);
		var j=telefonicas.indexOf(c);
		if (telefonicas.indexOf(c) == -1)
		{	return false;	}
	}
	return true;
}

function isInteger(n)
{   var i;
    var c=' ';
    for(i=0; i < n.length; i++)
    {   c=n.charAt(i);
	if(!isDigit(c))
	    return false;
    }
    return true;
}

function Fecha(dia,mes,anio)
{   var d=parseInt(dia);
    var m=parseInt(mes);
    var a=parseInt(anio);
    var bis=false;
    var ban=true;
    if(anio=='' || anio.length != 4 || anio==null || !isInteger(anio))
    {	return false;    }
    else
    { 	var rm4=a%4;
		var rm100=a%100;
		var rm400=a%400;
		if (rm4==0)
		{   if  (rm100==0 && rm4==0)
			{   bis=true;	}
		}		
		if(m==4 || m==6 || m==9 || m==11)
		{   if (d>30)
			{	return false;	}
		}
		else
		{   if(m==2)   
			{   if(bis==true)
				{   if(d>29)
					{	return false;	}
				}
				else
				{   if(d>28)
					{	return false;	}      
				}
			}
		}
    }
    return true;
}

function enBlanco(s)
{    var c;
     var i;
     for(i=0; i<s.length; i++)
     {   c=s.charAt(i);
	 if (!isWhitespace(c))
		return true;
     }
     return false;
}

function isName(s)
{   if (isEmpty(s) || s.lenght==0 || !isAlphabetic(s))
    {   return false;   }
    else {	return true;    }
}


function direccion(s)
{
	if(!dir.test(s)) { 
   	mensaje=mensaje+"El campo direccion no es válido\n";
		return false;
	}   	
	else
	{	return a_mayusculas(s);
	}
}

function isDigit(c)
{   return ((c >= "0") && (c <= "9"))
}

function ismail(cadena)
{
	for ( var c=0; c<cadena.lenght;c++)
	{	var letra=cadena.charAt(c);
		if (letra==" ")
		{	return false;	}
	}
	var punto = cadena.substring(cadena.lastIndexOf('.')+1,cadena.length);
	var dominio= cadena.substring(cadena.lastIndexOf('@')+1, cadena.lastIndexOf('.'));
	var usuario= cadena.substring(0,cadena.lastIndexOf('@'));
	var reserv= " @+*{}?‚¡¢£#!­[^&%,;:.";
	var reserv1= " @+*{}?‚¡¢£#!­[^&%,;:";	
	for(var cont=0; cont < usuario.length;cont ++)
	{
		x=usuario.substring(cont,cont+1);
		if(reserv.indexOf(x)!=-1)
		{   return false;
		}
	}
	for(var cont=0; cont < punto.length;cont ++)
	{
		x=punto.substring(cont,cont+1);
		if(reserv.indexOf(x)!=-1)
		{	return false;
		}
	}	
	for(var cont=0; cont < dominio.length;cont ++)
	{
		x=dominio.substring(cont,cont+1);
		if(reserv1.indexOf(x)!=-1)
		{	return false;
		}
	}
	if (punto.length<2 || dominio.length<1 || cadena.lastIndexOf('.')<0 || cadena.lastIndexOf('@')<0 || usuario.length <1)
	{	return false;
	}
	return true;
}

function isEmpty(s)
{   if (s==null || s=='')
	return true;
    else
	return false;
}

function isEmpty1(s)
{   s=quita_espacios(s);
	if (s==null || s=='')
	{ alert("El campo no puede ser vacio");
		return false;
	}
    else
		{return true;}
}

function quita_espacios(valor)
{	var i;
	var anterior =" ";
	var cad="";
	for (i=0;i<valor.length;i++)
	{
	    var c=valor.charAt(i);
	    if ((c==" " && anterior==" ")||(c==" " && i==(valor.length-1)))
		{ 
		  anterior=" "; 
		}
	    else
		{	
	      cad= cad+c; 
		  anterior=c;	
		}
	}
	if(cad.legth-1==" ")
	   cad=cad.subtring(cad.length-1);
      return cad;
}

function isLetter(c)
{    if( (minu.indexOf(c) != -1) || (may.indexOf(c) != -1) )//min, may son variables globales
	return true;
     else
	return false;
}

function isAlphabetic(s)
{   var i;
    for (i=0; i < s.length; i++)   
    {    if ( !isLetter(s.charAt(i)) )
	    return false;
    }
    return true;
}


function isCelular(cel)
{   
//	alert("celular");
	if (cel.length!=9)	
	{	return false; }
	for(var i=0; i < cel.length; i++)
	{	var c=cel.charAt(i);
		if(!isDigit(c)) 
		{	return false;
		}
    }
	if (cel.substring(0,1)!="0") 
	{	return false;
	}
	return true;
}



function Validar(n,e,c)
{
	var b=0;
  	cadena='';
	var n=quita_espacios(n);
	var e=quita_espacios(e);
	var c=quita_espacios(c);
	if (isEmpty(n))
    {   cadena=cadena+"No puede dejar su nombre en blanco" + "\n";b=b+1}
	if (isEmpty(e))
    {   cadena=cadena+"No puede dejar su email en blanco" + "\n";b=b+1}
	if (isEmpty(c))
    {   cadena=cadena+"No puede enviar un cadena vacio" + "\n";b=b+1}
	if (b>0)
	{	alert(cadena);
		return false;}
	else
	{
		if (!ismail(e))
		 { b=b+1; cadena = cadena + "Su direccion de correo no es valida\n";}
	    if (!isAlphabetic(n))
	    {  cadena = cadena + "Su nombre debe tener solo letras\n"; b=b+1;}	
		if (b>0)
		{	alert(cadena);
			return false;}
		else
			return true;
	}
}

function Validar_registro(n,e)
{
	var b=0;
  	cadena='';
	var n=quita_espacios(n);
	var e=quita_espacios(e);
	if (isEmpty(n))
    {   cadena=cadena+"No puede dejar su nombre en blanco" + "\n";b=b+1}
	if (isEmpty(e))
    {   cadena=cadena+"No puede dejar su email en blanco" + "\n";b=b+1}
	if (b>0)
	{	alert(cadena);
		return false;}
	else
	{
		if (!ismail(e))
		 { b=b+1; cadena = cadena + "Su direccion de correo no es valida\n";}
	    if (!isAlphabetic(n))
	    {  cadena = cadena + "Su nombre debe tener solo letras\n"; b=b+1;}	
		if (b>0)
		{	alert(cadena);
			return false;}
		else
			return true;
	}
}


//funcion para validar cedula
function Ruc_publicas(n)
{	
	var por="32765432";
	var suma=0;
	var p=0;
	var i;
	var ver;
	var e=0;
	var d=0;	
	if (n.substr(9,4) != "0000")
	{	for (i=0; i<8; i++)
		{  	p=(parseInt(n.charAt(i)))*(parseInt(por.charAt(i)));
			suma=suma+p;			
		}
		var div=0;
		div=suma%11;
		if ( div==0)
		{	ver=0;	}
		else
		{  d=suma/11;
		   e=((Math.floor(d))+1)*11;
		   ver=e-suma;	   
		}   
		if (ver!=(parseInt(n.substr(8,1))))
		{ return false;}	
		else
		{	return true; }
	}
	else
	{	return false;	}
}

function Ruc_privadas(n)
{
	var por="432765432";
	var suma=0;
	var p=0;
	var i;
	var ver;
	var e=0;
	var d=0;
	for (i=0; i<9; i++)
	{  	p=(parseInt(n.charAt(i)))*(parseInt(por.charAt(i)));
		suma=suma+p;			
	}
	var div=0;
	div=suma%11;
	if ( div==0)
	{	ver=0;	}
	else
	{  d=suma/11;
	   e=((Math.floor(d))+1)*11;
	   ver=e-suma;	   
	}   
	if (ver!=(parseInt(n.substr(9,1))))
	{	 return false;	}	
	else
	{	return true;	}
}

function Ruc_naturales(n)
{
	var por="212121212";
	var suma=0;
	var p=0;
	var i;
	var ver;
	var e=0;
	var d=0;
	for (i=0; i<9; i++)
	{   p=(parseInt(n.charAt(i)))*(parseInt(por.charAt(i)));
	    if (p > 9)
		p=p-9;
	    suma=suma+p;
	}
	if ( (suma%10) == 0)
	{    ver=0;	}
	else
	{  d=suma/10;
	   e=((Math.floor(d))+1)*10;
	   ver=e-suma;
	}   
	if (ver!=(parseInt(n.substr(9,1))))
	{ 	return false;	}	
	else
	{	return true;   }
}

function Ruc(n)
{
    var ban=true;
    if (isEmpty(n))
	{	return false;   }	
    else
    {	if (n.length != 13)
        { return false;	}	
		else
		{   if (n.substr(10,12)!="000" )
			{	var i;
				var c;
				for(i=0; i < 13; i++)	
				{   c=n.charAt(i);
					if ((!isDigit(c)) || (c==' '))
					{	return false;	}		
				}
				if (ban)			
				{ 		var fijo=n.substr(2,1);
						if (fijo=="9")
						{	if (!Ruc_privadas(n))
							{	return false;	}
						}					
						else
						{	if (fijo=="6")
							{	if (!Ruc_publicas(n))
								{	return false;	}
							}
							else
							{	if (fijo=="0" || fijo=="1" || fijo=="2" || fijo=="3" || fijo=="4" || fijo=="5" )
								{	if (!Ruc_naturales(n))
									{	return false;	}
								}
								else
								{	return false;	}
							}
						}						
				}
				else
				{	return false;	}						
			}
			else
			{	return false;}			
		}
    }
    return ban;
}


function Cedula(n,v)
{   var ban=true;
    if (isEmpty(n) || isEmpty(v))
    {	//cadena=cadena+"Cedula vacia\n";
	ban=false;
    }	
    else
    {	if ((n.length != 9) || (v.length !=1) )
        { //  cadena=cadena+"Cedula tiene 10 caracteres\n";
	    ban=false;
	}	
	else
	{   if ((!isDigit(v)) || (v==' '))
	    {   //cadena=cadena+"Solo numeros y no blancos en verificador\n";
	        ban=false;
	        var i;
	        var c;
                for(i=0; i < 9; i++)	
	        {   c=n.charAt(i);
		    if ((!isDigit(c)) || (c==' '))
		    { //  cadena=cadena+"solo numeros y no blancos en numero\n";
		        ban=false;
		    }		
	        }
	    }
	    else
	    {	var por="212121212";
		var suma=0;
		var p=0;
		var i;
		var ver;
		var e=0;
		var d=0;
		for (i=0; i<9; i++)
		{   p=(parseInt(n.charAt(i)))*(parseInt(por.charAt(i)));
		    if (p > 9)
			p=p-9;
		    suma=suma+p;			
		}
		if ( (suma%10) == 0)
		    ver=0;
		else
		{  d=suma/10;
		   e=((Math.floor(d))+1)*10;
		   ver=e-suma;
		}   
		if (ver!=(parseInt(v)))
                { //  cadena=cadena+"la cedula es incorrecta\n";
	            ban=false;
		}	
	    }
	}
    }
   // alert('cedula');
    return ban;
}

function Pasaporte(n)
{
    if (isEmpty(n))
	{	return false;   }	
    else
    {	if (n.length != 14)
        { return false;	}	
		else
		{   var i;
			var c;
			for(i=0; i < 14; i++)	
			{   c=n.charAt(i);
				if ((!isDigit(c)) || (c==' '))
				{	return false;	}		
			}
		}
	}
	return true;
}

/*********************************************Validar Credijaher*********************************/

function Credijaher(tipo_identificador,cedula,nombre,apellido,fecha_nac,calle,numero,transversal,referencia,dir_estado_cuenta,telefono1,telefono2,celular,estado_civil,sexo,tiempo_residencia,tiempo_residencia2,tipo_vivienda,email,profesion,ocupacion,actividad_economica,direccion_empresa,telefono_empresa,anios_empresa,cargo,sueldo,bono_solidario,analfabeto,giros,ultimo_producto,cuota,cedula_c,nombre_c,actividad_c,trabajo_c,ingresos_c,nombre_r1,telefono_r1,nombre_r2,telefono_r2)
{
	cadena='';
	var b=0;
	if (tipo_identificador[0].checked)	tipo_identificador1='CEDULA';
	if (tipo_identificador[1].checked)	tipo_identificador1='RUC';	

	if (isEmpty(cedula) || isEmpty(nombre) || isEmpty(apellido) || isEmpty(fecha_nac) || (isEmpty(calle) || isEmpty(numero)) || isEmpty(transversal) ||	isEmpty(referencia) || isEmpty(dir_estado_cuenta) || isEmpty(telefono1) || isEmpty(celular) ||  isEmpty(tiempo_residencia) || isEmpty(actividad_economica) || isEmpty(direccion_empresa) || isEmpty(telefono_empresa) || isEmpty(anios_empresa) || isEmpty(cargo) || isEmpty(sueldo) || isEmpty(nombre_r1)  || isEmpty(telefono_r1) || isEmpty(nombre_r2)  || isEmpty(telefono_r2 ) )																																																																																																																																											    {	
		cadena=cadena+"Los datos con casillero naranja son obligatorios. En caso de que su Estado Civil sea Casado los datos del conyuge son requeridos\n";
		b=1;
	}	

	else
	{
		var cedula1=quita_espacios(cedula);
		var nombre1=quita_espacios(nombre);
		var apellido1=quita_espacios(apellido);
		var calle1=quita_espacios(calle);
		var numero1=quita_espacios(numero);
		var transversal1=quita_espacios(transversal);
		var referencia1=quita_espacios(referencia);
		var dir_estado_cuenta1=quita_espacios(dir_estado_cuenta);
		var telefono11=quita_espacios(telefono1);
		var telefono21=quita_espacios(telefono2);
		var celular1=quita_espacios(celular);
		var estado_civil1=quita_espacios(estado_civil);
		var sexo1=quita_espacios(sexo);
		var tiempo_residencia1=quita_espacios(tiempo_residencia);
		var tiempo_residencia21=quita_espacios(tiempo_residencia2);
		var tipo_vivienda1=quita_espacios(tipo_vivienda);		
		var email1=quita_espacios(email);
		var profesion1=quita_espacios(profesion);
		var ocupacion1=quita_espacios(ocupacion);
		var actividad_economica1=quita_espacios(actividad_economica);
		var direccion_empresa1=quita_espacios(direccion_empresa);		
		var telefono_empresa1=quita_espacios(telefono_empresa);
		var anios_empresa1=quita_espacios(anios_empresa);		
		var cargo1=quita_espacios(cargo);
		var sueldo1=quita_espacios(sueldo);
		var bono_solidario1=quita_espacios(bono_solidario);
		var analfabeto1=quita_espacios(analfabeto);
		var giros1=quita_espacios(giros);
		var ultimo_producto1=quita_espacios(ultimo_producto);
		var cuota1=quita_espacios(cuota);		
		var cedula_c1=quita_espacios(cedula_c);
		var nombre_c1=quita_espacios(nombre_c);
		var actividad_c1=quita_espacios(actividad_c);
		var trabajo_c1=quita_espacios(trabajo_c);
		var ingresos_c1=quita_espacios(ingresos_c);
		var nombre_r11=quita_espacios(nombre_r1);
		var telefono_r11=quita_espacios(telefono_r1);
		var nombre_r21=quita_espacios(nombre_r2);
		var telefono_r21=quita_espacios(telefono_r2);

		switch( tipo_identificador1 )
		{	case "CEDULA":
				var n;
				var v;
				n=cedula1.substring(0,cedula1.length-1);				
				v=cedula1.substring(cedula1.length-1,cedula1.length);
				if (!Cedula(n,v))
				{	cadena=cadena+"Error en la Cedula\n";
					b=1;}
				break;
			case "RUC":
				if (!Ruc(cedula1))
				{	cadena=cadena+"Error en el Ruc\n";
					b=1;}
				break;
			case "PASAPORTE":
				if (!Pasaporte(identificador1))
				{	cadena=cadena+"Error en el Pasaporte\n";
					b=1;}			
				break;
		}
		if (!isName(nombre1) )
		{	b=1;
			cadena=cadena+"Error en el Nombre\n";
		}
		if (!isName(apellido1) )
		{	b=1;
			cadena=cadena+"Error en el Apellido\n";
		}
		if (!isTelephone(telefono11))
		{	b=1;
			cadena=cadena+"Error en el Telefono 1\n";
		}
		if (!isEmpty(telefono21))
		{	if(!isTelephone(telefono21))
			{	b=1;
				cadena=cadena+"Error en el telefono 2\n";
			}
		}
		if (!isCelular(celular1) )
		{	b=1;
			cadena=cadena+"Error en el Celular\n";
		}
		if (!isInteger(tiempo_residencia1) )
		{	b=1;
			cadena=cadena+"Error en el Tiempo de Residencia debe ser numerico\n";
		}
		if (!isEmpty(email1))
		{	if(!ismail(email1))
			{	b=1;
				cadena=cadena+"Error en el email\n";
			}
		}
		if (!isTelephone(telefono_empresa1))
		{	b=1;
			cadena=cadena+"Error en el Telefono de la Empresa\n";
		}
		if (!isInteger(anios_empresa1) )
		{	b=1;
			cadena=cadena+"Error en los anios que labora \n";
		}
		if (!isName(cargo1) )
		{	b=1;
			cadena=cadena+"Error en el Cargo en la Empresa\n";
		}
		if (estado_civil=="Casado")
		{	
			if (isEmpty(cedula_c1))
			{	b=1;
				cadena=cadena+"Si es casado debe digitar la cedula de su conyuge\n";
			}		 
			else
			{
				var n1;
				var v1;
				n1=cedula_c1.substring(0,cedula_c1.length-1);				
				v1=cedula_c1.substring(cedula_c1.length-1,cedula_c1.length);
				v=cedula1.substring(cedula1.length-1,cedula1.length);
				if (!Cedula(n1,v1))
				{	cadena=cadena+"Error en la Cedula del conyuge\n";
					b=1;
				}				
			}
			if (isEmpty(nombre_c1))
			{	b=1;
				cadena=cadena+"Si es casado debe digitar el nombre de su conyuge\n";
			}		 
			else
			{
				if (!isName(nombre_c1) )
				{	b=1;
					cadena=cadena+"Error en el Nombre del Conyugue\n";
				}
			}
		}
		if (!isName(nombre_r11) )
		{	b=1;
			cadena=cadena+"Error en el nombre de la referencia 1\n";
		}
		if (!isTelephone(telefono_r11))
		{	b=1;
			cadena=cadena+"Error en el Telefono de la referencia 1\n";
		}
		if (!isName(nombre_r21) )
		{	b=1;
			cadena=cadena+"Error en el nombre de la referencia 2\n";
		}
		if (!isTelephone(telefono_r21))
		{	b=1;
			cadena=cadena+"Error en el Telefono de la referencia 2\n";
		}
		if (!isEmpty(sueldo1))
		{	if(sueldo1=0)
			{	b=1;
				cadena=cadena+"Debe digitar el valor de su sueldo\n";
			}
		}		
	}

	if (b==1)
	{	alert(cadena);
		return false;		
	}
	else
	{
	
		ventana=confirm("Esta seguro que desea solicitar su Credijaher en la Ciudad y Agencia escogidas");
		if (ventana)
		{ return true;	}
		else
		{ return false; }		
	}
}

/**************************************************************actualiza_cliente****************************************************/

function actualiza_cliente(c,t)
{
	cadena='';
	var b=0;
	if (isEmpty(c) || isEmpty(t) )
	{	cadena=cadena+"Los datos son obligatorios\n";
		b=1;
	}	
	else
	{		
		var c1=quita_espacios(c);
		var t1=quita_espacios(t);
		var ti='';
/************************* cedula ***********************************/
		if (c1.length==10)
		{	ti="CEDULA"; 
		}
		else if (c1.length==13)
		{	ti="RUC";}
		else
		{	cadena=cadena+"Cedula/RUC incorrectos\n";
			b=1;
		}
		if (b==0)
		{	switch(ti)
			{	case "CEDULA":
					var n;
					var v;
					n=c1.substring(0,9);				
					v=c1.substring(9,10);
					if (!Cedula(n,v))
					{	cadena=cadena+"Cedula/RUC incorrectos\n";
						b=1;
					}
					break;
				case "RUC":
					if (!Ruc(c1))
					{	cadena=cadena+"Cedula/RUC incorrectos\n";
						b=1;
					}
					break;
			}
//telefono celular
			if (!isCelular(t1))
			{	b=1;
				cadena=cadena+"Error en su telefono celular\n";
			}
		}
	}
	if (b==1)
	{	alert(cadena);
		return false;		
	}
	else
	{	return true;}
}

