/*Funcion que retira los espacios en blanco que estan a la izquierda de nuestra cadena*/
function fnLTrim(str)
{
   var whitespace = new String(" \t\n\r");  //Variable que contien el caracter espacio y caracteres especiales
   var str_interno = new String(str);	//Variable vacia para almacenar el resultado
   if (whitespace.indexOf(str_interno.charAt(0)) != -1)  //Verificamos que la variable este vacia
   {  // Variable j indica la posición donde nos encontramos en el string,
      var j=0, i = str_interno.length;	// Variable i se almacena la longitud del string
      while (j < i && whitespace.indexOf(str_interno.charAt(j)) != -1)  //Nos movemos por todo el string buscando espacios en blanco
         j++;  //Aumentamos el contador cuando no se encontro un espacio en blanco
      str_interno = str_interno.substring(j, i);  //cortamos la cadena desde la posicion donde se encontro un espacio en blanco
   }
   return str_interno; // devolvemos el string resultante
}

/*Funcion que retira los espacios en blanco a la derecha de nuestra cadena*/
function fnRTrim(str)
{
   var whitespace = new String(" \t\n\r");//Variable que contien el caracter espacio y caracteres especiales
   var str_interno = new String(str);//Variable vacia para almacenar el resultado
   if (whitespace.indexOf(str_interno.charAt(str_interno.length-1)) != -1)
   {   // Variable j indica la posición donde nos encontramos en el string,
      var i = str_interno.length - 1; // Variable i se almacena la longitud del string
      while (i >= 0 && whitespace.indexOf(str_interno.charAt(i)) != -1)  //Nos movemos por todo el string buscando espacios en blanco
         i--;//Disminuimos el contador cuando no se encontro un espacio en blanco
      str_interno = str_interno.substring(0, i+1); //cortamos la cadena desde la posicion donde se encontro un espacio en blanco
   }
   return str_interno;// devolvemos el string resultante
}

/*Funcion que retira los especios en blanco de la cadena*/
function fnTrim(str)
{
   return fnRTrim(fnLTrim(str)); //Lamamos a la función para vaciar el lado derecho y luego la del lado izquierdo
}

function validarCedula(cedula)
{	
	cadena=/^[0-9]{10}$/;
	sumaprod=0;
	coef='212121212';
    if(cadena.test(cedula))
	{		
		i=0;
		while(i<9)
		{				
			if(i==0)
			{
			  numruc=cedula.substr(0,1);		
			  numcoef=coef.substr(0,1);	  		 
			}
			else
			{
			  numruc=cedula.substr(i,1);		
			  numcoef=coef.substr(i,1);	  
			}		
			product=numruc*numcoef;		
			if (product>=10)
			{			
			  product1=String(product);	  			
			  num1=product1.substr(0,1);		 
			  num2=product1.substr(1,1);			
			  product=Number(num1)+Number(num2);	 
			}
			 sumaprod=sumaprod+product;				 		 
			 i=i+1;		
		}		
		resid=sumaprod%10;
		if(resid==0)
		 digverf=0;
		else
		 digverf=10-resid;
		digverfced=cedula.substr(9,1)											
		if(digverfced==digverf)
		 return 1;	 
		else
		 return 0;	         
	}
	else
	 return 0;	 
	 
}


function validarRucPN(rucpn)
{	

	cadena=/^[0-9]{13}$/;
	sumaprod=0;
	coef='212121212';		
	if(cadena.test(rucpn)&&(rucpn.substr(10,3))==001&&(rucpn.substr(2,1))<6&&(rucpn.substr(0,2))>=1&&(rucpn.substr(0,2))<=22)
	{		
		i=0;
		while(i<9)
		{				
			if(i==0)
			{
			  numruc=rucpn.substr(0,1);		
			  numcoef=coef.substr(0,1);	  		 
			}
			else
			{
			  numruc=rucpn.substr(i,1);		
			  numcoef=coef.substr(i,1);	  
			}		
			product=numruc*numcoef;		
			if (product>=10){			
			  product1=String(product);	  			
			  num1=product1.substr(0,1);		 
			  num2=product1.substr(1,1);			
			  product=Number(num1)+Number(num2);	 
			}
			 sumaprod=sumaprod+product;				 		 
			 i=i+1;		
		}			
		resid=sumaprod%10;
		if(resid==0)
		 digverf=0;
		else
		 digverf=10-resid;
		digverfced=rucpn.substr(9,1);
		if(digverfced==digverf)
		 return 1;	 
		else
		 return 0;	          
	}
	else
	 return 0;	 
}

/*Función para validar el RUC de una sociedad*/
function validarRucSP(rucsp)
{
	cadena=/^[0-9]{13}$/;
	sumaprod=0;
	coef='32765432';
	if(cadena.test(rucsp)&&(rucsp.substr(9,4))==0001&&(rucsp.substr(2,1))==6&&(rucsp.substr(0,2))>=1&&(rucsp.substr(0,2))<=22)
	{		
		
		i=0;
		while(i<8)
		{				
			if(i==0)
			{
			  numruc=rucsp.substr(0,1);		
			  numcoef=coef.substr(0,1);	  		 
			}
			else
			{
			  numruc=rucsp.substr(i,1);		
			  numcoef=coef.substr(i,1);	  
			}		
			product=numruc*numcoef;					
            sumaprod=sumaprod+product;				 		 
		    i=i+1;		
		}		
		resid=sumaprod%11;
		if(resid==0 && rucsp.substr(9,1)==0)
			return 1;
		digverf=11-resid;
		digverfruc=rucsp.substr(8,1)		
		if(digverfruc==digverf)
		 return 1;	 
		else
		 return 0; 
	}
	else
	 return 0;	 
}

/*Función para validar un RUC de la sociedad*/
function validarRucSPE(rucspe)
{	
	cadena=/^[0-9]{13}$/;
	sumaprod=0;	
	coef='432765432';	
	if(cadena.test(rucspe)&&(rucspe.substr(10,3))==001&&(rucspe.substr(2,1))==9&&(rucspe.substr(0,2))>=1&&(rucspe.substr(0,2))<=22)
	{		
		i=0;
		while(i<9)
		{				
			if(i==0)
			{
			  numruc=rucspe.substr(0,1);		
			  numcoef=coef.substr(0,1);	  		 
			}
			else
			{
			  numruc=rucspe.substr(i,1);		
			  numcoef=coef.substr(i,1);	  
			}		
			product=numruc*numcoef;					
            sumaprod=sumaprod+product;	
			
		    i=i+1;		
		}
		resid=sumaprod%11;
		if(resid==0 && rucspe.substr(9,1)==0)
			return 1;
		digverf=11-resid;
		digverfruc=rucspe.substr(9,1);		
		if(digverfruc==digverf)
		 return 1;	 
		else
		 return 0; 
	}
	else
	 return 0;	 
}


/* función para validar RUCs de empresas del Estado */
function validarRUCEmpresasEstado(ruc)
{
	intvalidador=ruc.substr(8,1);
	i=0;
	strcoeficientes="32765432";
	if(ruc.substr(2,1)!=6)
		return 0;
	intsumacoeficientes=0;	
	while(i<=7)
		{
			intsumacoeficientes+=ruc.substr(i,1)*strcoeficientes.substr(i,1);
			i=i+1;
		}
	intresiduo=intsumacoeficientes%11;
	intvalidador_algoritmo=11-intresiduo;
	if(intresiduo==0 && intvalidador==0)
		return 1;
	if(intvalidador_algoritmo==intvalidador)
		return 1;
	else
		return 0;
}
var va=0
var va2="";
function valorant(valor){
tmp=valor.value
if ((tmp>0)||(tmp<=0))
	va=valor.value	
}

function validarletra(valor){
	a=valor.value
	if (!((a>0)||(a<=0))){
		valor.value=va
		}
}

/*function fnsololetra()
{
if ((event.keyCode > 32 && event.keyCode <= 44) || (event.keyCode > 45 && event.keyCode < 65) ||  (event.keyCode > 90 && event.keyCode < 97) || (event.keyCode >122 && event.keyCode<164)) 
event.returnValue = false;
}*/

function fnsololetranumero()
{
if ((event.keyCode > 32 && event.keyCode <= 44) || (event.keyCode > 45 && event.keyCode < 47) ||(event.keyCode > 57 && event.keyCode < 65) ||  (event.keyCode > 90 && event.keyCode < 97) ||  (event.keyCode >122 && event.keyCode<164))
event.returnValue = false;
}

/*function fndireccion()
{
if ((event.keyCode > 32 && event.keyCode < 35) || (event.keyCode > 36 && event.keyCode < 45)  || (event.keyCode > 57 && event.keyCode < 65) ||  (event.keyCode > 90 && event.keyCode < 97) ||  (event.keyCode >122 && event.keyCode<164))
event.returnValue = false;
}

function fnsolonumero()
{
if (event.keyCode < 47 || event.keyCode > 57)
event.returnValue = false;
}
*/
function enter1(obj)
{
	if(event.keyCode==13) 
	{
		vacio();
	}
}

function fnemailCheck(valor) {

	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(valor)) 
		return 1;
	else
		return 0;
/*txt=valor.toLowerCase();
  if (txt.indexOf("@")<3){
   return 1;
   }*/
 /*  
   txt.length
  if ((txt.indexOf(".com")<5)&&(txt.indexOf(".org")<5)
  &&(txt.indexOf(".gov")<5)&&(txt.indexOf(".net")<5)
  &&(txt.indexOf(".mil")<5)){
//  document.form1.txtemail.focus();
  return 2;
  }*/
 }


function getCaretPosition(objeto)
{ 
  var i = objeto.value.length+1; 
  
  if (objeto.createTextRange)
  {
	  caracter = document.selection.createRange().duplicate(); 
	  while (caracter.parentElement()==objeto && caracter.move("character",1)==1)
	    --i; 
  } 
  return i; 
}

function cambiar(objeto)
{
  //alert(window.event.keyCode);
  if (window.event.keyCode!=8 && window.event.keyCode!=16 && window.event.keyCode!=17 && window.event.keyCode!=32 && window.event.keyCode!=35 && window.event.keyCode!=36 && window.event.keyCode!=37 &&  window.event.keyCode!=38 && window.event.keyCode!=39 && window.event.keyCode!=40 && window.event.keyCode!=46 && window.event.keyCode!=90)
  {
    pos = getCaretPosition(objeto);
	objeto.value=objeto.value.toUpperCase();
    rng  = objeto.createTextRange();
	if (objeto.type=="textarea")
	  rng .move("Character",pos);
    else
	  rng .move("Character",pos-1);
    rng .select();
  }
}

function Recargar()
{
	window.opener.location.reload();
	parent.close();
}

function Abrir_Ventana(theURL,w,h) 
{ 
	var windowprops ="top=150,left=250,toolbar=no,location=no,status=no, menubar=no,scrollbars=yes, resizable=no,width=" + w + ",height=" + h;
	window.open(theURL,"",windowprops);
} 

function verificaFecha(fecha){ 
	if(fecha!="")
	{ 
        var testFecha = new Date(fecha); 
        if(!isNaN(testFecha))
		{ 
            var separador = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; 
			
            var testFecha2= fecha.match(separador); 
			/*alert(testFecha2[4]);
			alert(testFecha2[3]);
			alert(testFecha2[1]);
			*/
            if(testFecha2==null)
				return 0; 
            else{ 
				if((testFecha2[1])>12)
					return 0; 
				else{
					switch(parseInt(testFecha2[1]))
						{
							case 1:
							case 3:
							case 5:
							case 7:
							case 8:
							case 10:
							case 12: if(testFecha2[3]>31)
											return 0;
										break;
							case 4:
							case 6:
							case 9:
							case 11: if(testFecha2[3]>30)
										{
										return 0;
										}
									break;
							case 2: if(testFecha2[4]%4==0)
										{
										if(testFecha2[3]>30)
											return 0;
										}
									else{
											if(testFecha2[3]>29)
												return 0;
										}
									break;
						}
					 return 1; 
				if(testFecha.setFullYear(testFecha2[4],testFecha2[3],testFecha2[1]))
	                return 1; 
				else
					return 0;
					
              
            	} 
				}
        } 
        else 
			return 0; 
    } 
    return 0; 
  /* if(fecha!="")
	{ 
        var testFecha = new Date(fecha); 
        if(!isNaN(testFecha))
		{ 
            var separador = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; 
            var testFecha2= fecha.match(separador); 
            if(testFecha2==null)
				return 0; 
            else{ 
				alert(testFecha2[4]);
				alert(testFecha2[3]);
				alert(testFecha2[1]);
				alert(testFecha.setFullYear(testFecha2[4],testFecha2[1],testFecha2[3])); 
                return 1; 
            	} 
        } 
        else 
			return 0; 
    } 
    return 0; */
} 

function comparar(fechamenor, fechamayor)
{
var auxfec1=Date.parse(fechamenor);
var auxfec2=Date.parse(fechamayor);
if (auxfec1>auxfec2)
{
	return 0;
}
}



function fnsololetranumero()
{
if ((event.keyCode > 32 && event.keyCode < 44) || (event.keyCode > 45 && event.keyCode < 47) ||(event.keyCode > 57 && event.keyCode < 65) ||  (event.keyCode > 90 && event.keyCode < 97)) 
event.returnValue = false;
}


function calcular_edad(fecha){ 

    //calculo la fecha de hoy 
    hoy=new Date() 
    //alert(hoy) 

    //calculo la fecha que recibo 
    //La descompongo en un array 
    var array_fecha = fecha.split("/") 
    //si el array no tiene tres partes, la fecha es incorrecta 
    if (array_fecha.length!=3) 
       return false 

    //compruebo que los ano, mes, dia son correctos 
    var ano 
    ano = parseInt(array_fecha[2]); 
    if (isNaN(ano)) 
       return false 

    var mes 
    mes = parseInt(array_fecha[0]); 
    if (isNaN(mes)) 
       return false 

    var dia 
    dia = parseInt(array_fecha[1]); 
    if (isNaN(dia)) 
       return false 


    //si el año de la fecha que recibo solo tiene 2 cifras hay que cambiarlo a 4 
    if (ano<=99) 
       ano +=1900 

    //resto los años de las dos fechas 
    edad=hoy.getYear()- ano - 1; //-1 porque no se si ha cumplido años ya este año 

    //si resto los meses y me da menor que 0 entonces no ha cumplido años. Si da mayor si ha cumplido 
    if (hoy.getMonth() + 1 - mes < 0) //+ 1 porque los meses empiezan en 0 
       return edad 
    if (hoy.getMonth() + 1 - mes > 0) 
       return edad+1 

    //entonces es que eran iguales. miro los dias 
    //si resto los dias y me da menor que 0 entonces no ha cumplido años. Si da mayor o igual si ha cumplido 
    if (hoy.getUTCDate() - dia >= 0) 
       return edad + 1 

    return edad 
} 

function Cerrar()
{
	window.parent.close();
}

function isURL(argvalue) {
	var strDireccionWeb=new String;
	strDireccionWeb=argvalue;
	
	var arrayElementos=strDireccionWeb.split(".");
	if(arrayElementos.length<3)
		return 1;
		//alert("No cumple 1");
	if(arrayElementos[0].toLowerCase()!="www")
		return 2;
		//alert("No cumple 2");
	for(i=0;i<arrayElementos.length;i++)
		{
			if(arrayElementos[i]=="")
				//alert("No cumple trama "+i+" Errónea");
				return 3;
		}
//	alert(arrayElementos.length);
 /* if (argvalue.indexOf(" ") != -1)
    return false;
  else if (argvalue.indexOf("http://") == -1)
    return false;
  else if (argvalue == "http://")
    return false;
  else if (argvalue.indexOf("http://") > 0)
    return false;

  argvalue = argvalue.substring(7, argvalue.length);
  if (argvalue.indexOf(".") == -1)
    return false;
  else if (argvalue.indexOf(".") == 0)
    return false;
  else if (argvalue.charAt(argvalue.length - 1) == ".")
    return false;

  if (argvalue.indexOf("/") != -1) {
    argvalue = argvalue.substring(0, argvalue.indexOf("/"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }

  if (argvalue.indexOf(":") != -1) {
    if (argvalue.indexOf(":") == (argvalue.length - 1))
      return false;
    else if (argvalue.charAt(argvalue.indexOf(":") + 1) == ".")
      return false;
    argvalue = argvalue.substring(0, argvalue.indexOf(":"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }*/

  return 0;

}

function antierror(){return true};


var timerID = null;
var timerRunning = false;

function stopclock (){
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}

function showtime () {
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = "" + ((hours >12) ? hours -12 :hours)
timeValue += ((minutes < 10) ? ":0" : ":") + minutes
timeValue += ((seconds < 10) ? ":0" : ":") + seconds
timeValue += (hours >= 12) ? " P.M." : " A.M."
window.status = "ANDINATEL NOS COMPLACE COMUNICARTE                                                              Hora del Sistema:"+timeValue;
timerID = setTimeout("showtime()",50);
timerRunning = true;
}

function startclock () {
stopclock();
showtime();
}


  var  sBrowser ;
   var  sVersion ;

   function  setBrowserType (){
   var  aBrowFull  = new Array( "opera" ,  "msie" ,  "netscape" ,  "gecko" ,  "mozilla" );
   var  aBrowVers  = new Array( "opera" ,  "msie" ,  "netscape" ,  "rv" ,     "mozilla"    );
   var  aBrowAbrv  = new Array( "op" ,     "ie" ,    "ns" ,        "mo" ,     "ns"    );
   var  sInfo  =  navigator . userAgent . toLowerCase ();;

sBrowser  =  "" ;
   for (var  i  =  0 ;  i  <  aBrowFull . length ;  i ++){
   if (( sBrowser  ==  "" ) && ( sInfo . indexOf ( aBrowFull [ i ]) != - 1 )){
sBrowser  =  aBrowAbrv [ i ];
sVersion  =  String ( parseFloat ( sInfo . substr ( sInfo . indexOf ( aBrowVers [ i ]) +  aBrowVers [ i ]. length  +  1 )));
      }
     }
    }

setBrowserType ();

   function  getBrowserName (){
   return  sBrowser ;
   }

   function  getBrowserVersion (){
   return  sVersion ;
   }

   
function fnsolonumero(e)
{

var keyCode =(window.event) ? event.keyCode : e.keyCode;
if(keyCode==16)
	alert("Tecla no Permitida");
//alert(e.which);
if ((getBrowserName ()=="ie"))
	{
	if (((keyCode <= 47 || keyCode > 57) && (keyCode!=8)))
			event.returnValue = false;
			return false;
	}
else{
	if(((e.which <= 47 || e.which > 57) && (e.which!=8) && e.which!=0 ))
	{
		
		e.returnValue=false;
		e.preventDefault();
		return false;
	}

	}
}


function fnsololetra(e)
{
var keyCode =(window.event) ? event.keyCode : e.keyCode;
if(keyCode==16)
	alert("Tecla no Permitida");


if(getBrowserName ()=="ie")	
	{
	if ((event.keyCode > 32 && event.keyCode <= 44) || (event.keyCode > 45 && event.keyCode < 65) ||  (event.keyCode > 90 && event.keyCode < 97)
		|| event.keyCode==183 || event.keyCode==186 || event.keyCode==191 || event.keyCode==199 || event.keyCode==161 || event.keyCode==170 || event.keyCode==231)
		event.returnValue = false;
	}
else{	
	if ((e.which > 32 && e.which < 44) || (e.which > 45 && e.which < 65) ||  (e.which > 90 && e.which < 97)
		|| e.which==183 || e.which==186 || e.which==191 || e.which==199 ||e.which==161 || e.which==170 || event.keyCode==231)
			{
			e.returnValue=false;
			e.preventDefault();
			return false;
			}
	}
}



function fnteclaControl(e)
{
	var keyDown =(window.event) ? event.keyCode : e.keyCode;
	
	//alert(event.keyCode);
	if(keyDown==17)
		alert("Tecla no Permitida");
	if(e.which==17)
		alert("Tecla no Permitida");
}

function fndireccion(e)
{
var keyCode =(window.event) ? event.keyCode : e.keyCode;

if(keyCode==16)
	alert("Tecla no Permitida");

//alert(e.which);
if(getBrowserName ()=="ie")
	{ if ((keyCode > 32 && keyCode < 44) || (keyCode > 45 && keyCode < 48)
	   || (keyCode > 57 && keyCode < 65)    || (keyCode > 90 && keyCode < 97)
	   || (keyCode > 122 && keyCode<209)  || (keyCode>209 && keyCode<241))
		event.returnValue = false;
		return false;
	}
else{
	 if ((e.which > 32 && e.which < 44) || (e.which > 45 && e.which < 48)
	   || (e.which > 57 && e.which < 65)    || (e.which > 90 && e.which < 97)
	   || (e.which > 122 && keyCode<209) || (e.which>209 && e.which<241))
	 	// || e.which=="0" comentado por tecla TAB
		{
		e.returnValue=false;
		e.preventDefault();
		return false;
		}
	}
}



function fnnombreempresa(e)
{
var keyCode =(window.event) ? event.keyCode : e.keyCode;

if(keyCode==16)
	alert("Tecla no Permitida");

//alert(keyCode);
if(getBrowserName ()=="ie")
	{ if ((keyCode > 32 && keyCode < 38) || (keyCode>38 && keyCode<44) ||
		(keyCode > 45 && keyCode < 46) || (keyCode > 57 && keyCode < 65) || 
		(keyCode > 90 && keyCode < 97) || (keyCode > 122 && keyCode<209) ||
		(keyCode>209 && keyCode<241))
		event.returnValue = false;
		return false;
	}
else{
	 if ((e.which > 32 && e.which < 38) || (e.which>38 && e.which<44) ||
		 (e.which > 45 && e.which < 46) || (e.which > 57 && e.which < 65)|| 
		 (e.which > 90 && e.which < 97) || (e.which > 122 && keyCode<209)|| 
		 (e.which>209 && e.which<241) )
	 		//|| e.which=="0" comentado por tecla TAB
		{
		e.returnValue=false;
		e.preventDefault();
		return false;
		}
	}
}

function fndireccioncorreo(e)
{
var keyCode =(window.event) ? event.keyCode : e.keyCode;

if(keyCode==16)
	alert("Tecla no Permitida");

if(getBrowserName ()=="ie")
	{ if ((keyCode > 32 && keyCode < 45) || (keyCode > 46 && keyCode < 48)
	   || (keyCode > 57 && keyCode < 65) || (keyCode > 90 && keyCode < 97)
	   || (keyCode > 122))
		event.returnValue = false;
		return false;
	}
else{
	 if ((e.which > 32 && e.which < 45) || (e.which > 46 && e.which < 48)
	   || (e.which > 57 && e.which < 65)    || (e.which > 90 && e.which < 97)
	   || (e.which > 122))
		{
		e.returnValue=false;
		e.preventDefault();
		return false;
		}
	}
}

function fnteclascorreo(e)
{
var keyCode =(window.event) ? event.keyCode : e.keyCode;
if(keyCode==17)
	alert("Tecla no Permitida");

if(getBrowserName ()=="ie")
	{ if ((keyCode > 32 && keyCode < 44) || (keyCode > 45 && keyCode < 48)
	   || (keyCode > 57 && keyCode < 64) || (keyCode > 90 && keyCode < 97)
	   || (keyCode > 122))
		event.returnValue = false;
		return false;
	}
else{
	 if ((e.which > 32 && e.which < 44) || (e.which > 45 && e.which < 48)
	   || (e.which > 57 && e.which < 64)    || (e.which > 90 && e.which < 97)
	   || (e.which > 122))
		{
		e.returnValue=false;
		e.preventDefault();
		return false;
		}
	}
}
