//Scripts de m?scaras para campos variados

// fun??o que formata dados conforme precise pode ser modificada
function FormataDado(campo,tammax,teclapres){
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );			
	tam = vr.length;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr.substr(0, tam); }
	 	if ( (tam > 2) && (tam <= 5) ){
	 		campo.value = vr.substr( 0, tam - 2 ) + '.' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 6) && (tam <= 8) ){
	 		campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + '.' + vr.substr( tam - 2, tam ) ; }
	}		
}

/*fun??o que formata campos de valores ($) coloca ponto(.) 
nas casas de milhar e virgula(,) deixando duas casas decimais */
function FormataValor(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );	
	vr = vr.replace( ".", "" );	
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );		
	tam = vr.length;
	if (teclapres.type == 'blur'){
		FormataValorOnBlur(campo);
	}
	else {
		if (tam < tammax && tecla != 8 && tecla != 13 && tecla != 35 && tecla != 36 && tecla != 37 && tecla != 38 && tecla != 39 && tecla != 40 && tecla != 46){ tam = vr.length + 1 ; }
		if (tecla == 8 ){ tam = tam - 1 ; }

	if ( tecla != 9 && tecla != 8 ){
	 	if ( (tam > 2) && (tam <= 5) ){
	 		campo.value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 6) && (tam <= 8) ){
	 		campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 9) && (tam <= 11) ){
	 		campo.value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 12) && (tam <= 14) ){
	 		campo.value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 15) && (tam <= 17) ){
	 		campo.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
	 	if ((tam >= 18) && (tam <= 20)){
	 		campo.value = vr.substr( 0, tam - 17 ) + '.' + vr.substr(tam -17, 3) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
		if ((tam >= 21) && (tam <= 23)){
	 		campo.value = vr.substr( 0, tam - 20 ) + '.' + vr.substr (tam -20, 3) + '.' + vr.substr(tam -17, 3) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
	 }
	 else {
		 	if (tecla == 9 || tecla == 13 || tecla == 0){
				FormataValorOnBlur(campo);
			}
	 	}
	 }
}

function FormataValorOnBlur(campo) {
	vr = campo.value;
	tam = vr.length;
 	if ( tam == 1 ){ 
 		campo.value = vr.substr(tam - 1 , tam) + ',00';}
	if (tam == 2){
		campo.value = vr.substr(tam - 2 , tam) + ',00' + vr.substr(3, tam -2); }
}

/*fun??o que pula direto de uma campo para o outro quando 
o tamanho m?ximo dele ? completado.*/
function SaltaCampo (campo,prox,tammax,teclapres){
	var tecla = teclapres.keyCode;
	vr = campo.value;
	if( tecla == 109 || tecla == 188 || tecla == 110 || tecla == 111 || tecla == 223 || tecla == 108 ){
		campo.value = vr.substr( 0, vr.length - 1 ); }
	else{
	 	vr = vr.replace( "-", "" );
	 	vr = vr.replace( "/", "" );
	 	vr = vr.replace( ",", "" );
	 	vr = vr.replace( ".", "" );
	 	vr = vr.replace( "(", "" );
	 	vr = vr.replace( ")", "" );
		vr = vr.replace( "c", "" );	
		vr = vr.replace( "v", "" );			 	
	 	tam = vr.length;	
		
	 	if (tecla != 0 && tecla != 9 && tecla != 16 && tecla != 144 ){
			if ( tam == tammax ){
					prox.focus();
			}
		}
	}
}

//fun??o que formata data no modo dd/mm/aaaa
function FormataData(campo,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( ".", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ":", "" );	
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );			
	tam = vr.length + 1;

		if ( tecla != 9 && tecla != 8 ){
			if ( tam > 2 && tam < 5 )
				campo.value = vr.substr( 0, tam - 2  ) + '/' + vr.substr( tam - 2, tam );
			if ( tam >= 5 && tam <= 10 )
				campo.value = vr.substr( 0, 2 ) + '/' + vr.substr( 2, 2 ) + '/' + vr.substr( 4, 4 ); 
		}
}

//fun??o que formata o mes e ano
function FormataMesAno(campo,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( ".", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	tam = vr.length + 1;

	if ( tecla != 9 && tecla != 8 ){
		if ( tam > 2 && tam < 7 )
			campo.value = vr.substr( 0, 2 ) + '/' + vr.substr( 2, tam ); }
}

//fun??o que formata porcentagem colocando deixando 3 casas depois da virgula
function FormataPercentual(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	tam = vr.length;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		if ( tam <= 3 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 3) && (tam <= 6) ){
	 		campo.value = vr.substr( 0, tam - 3 ) + ',' + vr.substr( tam - 3, tam ) ; }
	}		
	
}

//fun??o que formata o cpf
function FormataCpf(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );			
	tam = vr.length;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 2) && (tam <= 5) ){
	 		campo.value = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 6) && (tam <= 8) ){
	 		campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 9) && (tam <= 11) ){
	 		campo.value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 12) && (tam <= 14) ){
	 		campo.value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 15) && (tam <= 17) ){
	 		campo.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;}
	}		
}

//fun??o que formata cart?o de cr?dito
function FormataCartaoCredito(campo, teclapres) {
    var tammax = 16;
	var tecla = teclapres.keyCode;
	vr = campo.value;

	if ( tecla == 8 || (tecla >= 48 && tecla <= 57) || (tecla >= 96 && tecla <= 105) )
	{
		vr = vr.replace( "/", "" );
		vr = vr.replace( "/", "" );
		vr = vr.replace( ",", "" );
		vr = vr.replace( ".", "" );
		vr = vr.replace( ".", "" );
		vr = vr.replace( ".", "" );
		vr = vr.replace( ".", "" );
		vr = vr.replace( "-", "" );
		vr = vr.replace( "-", "" );
		vr = vr.replace( "-", "" );
		vr = vr.replace( "-", "" );
		vr = vr.replace( "-", "" );
		tam = vr.length;

		if (tam < tammax && tecla != 8)
		   {tam = vr.length + 1 ; }

		if (tecla == 8 ) {tam = tam - 1 ; }

		if ( tam < 5 )
		   { campo.value = vr ; }
	 	if ( ( tam >  4 ) && ( tam < 9 ) )
		   { campo.value = vr.substr( 0, 4 ) + '.' + vr.substr( 4, tam-4 ) ; }
	 	if ( ( tam >  8 ) && ( tam < 13 ) )
		   { campo.value = vr.substr( 0, 4 ) + '.' + vr.substr( 4, 4 ) + '.' + vr.substr( 8, tam-4 ) ; }
	 	if ( tam > 12 )
		   { campo.value = vr.substr( 0, 4 ) + '.' + vr.substr( 4, 4 ) + '.' + vr.substr( 8, 4 ) + '.' + vr.substr( 12, tam-4 ); }
	}	
}

//fun??o que formata cnpj
function FormataCnpj(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );		
	tam = vr.length;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 2) && (tam <= 6) ){
	 		campo.value = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 7) && (tam <= 9) ){
	 		campo.value = vr.substr( 0, tam - 6 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 10) && (tam <= 12) ){
	 		campo.value = vr.substr( 0, tam - 9 ) + '.' + vr.substr( tam - 9, 3 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 13) && (tam <= 14) ){
	 		campo.value = vr.substr( 0, tam - 12 ) + '.' + vr.substr( tam - 12, 3 ) + '.' + vr.substr( tam - 9, 3 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 15) && (tam <= 17) ){
	 		campo.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;}
	}		
}

//fun??o que formata o numero de telefone
function FormataTelefone(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );			
	tam = vr.length;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 4) ){
	 		campo.value = vr.substr( 0, tam - 4 ) + '-' + vr.substr( tam - 4, tam ) ; }
	}		
}

//fun??o que formata hora no formato hh:mm
function FormataHora(campo,tammax,teclapres){
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );	
	vr = vr.replace( ".", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ":", "" );	
	vr = vr.replace( ":", "" );	
	vr = vr.replace( ",", "" );	
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );			
	tam = vr.length;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){ tam = tam - 1 ; }
			
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 2 ){
	 		campo.value = vr ;}
		if ( tam > 2 && tam <= 3 ){
			campo.value = vr.substr( 0, tam - 1 ) + ':' + vr.substr( tam - 1, tam );}
		if ( tam > 3 && tam <= 5 ){
			campo.value = vr.substr( 0, tam - 2 ) + ':' + vr.substr( tam - 2, tam );}
			
	}
}

//fun??o que formata o n?mero do cep
function FormataCep(campo,tammax,teclapres){
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );	
	vr = vr.replace( ".", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ":", "" );	
	vr = vr.replace( ",", "" );	
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );		
	tam = vr.length ;

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){ tam = tam - 1 ; }
			
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 2 ){
	 		campo.value = vr ;}
		if ( tam > 3 && tam <= tammax ){
			campo.value = vr.substr( 0, tam - 3 ) + '-' + vr.substr( tam - 3, tam );}
	}
}

//fun??o que formata o c?digo do benefici?rio
function FormataCodBenef(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );			
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "c", "" );	
	vr = vr.replace( "v", "" );			
	tam = vr.length;

	if (tam < tammax && tecla != 8 && tecla != 13 && tecla != 35 && tecla != 36 && tecla != 46){ tam = vr.length + 1 ; }

	if (tecla == 8 ){ tam = tam - 1 ; }
		
	if ( tecla != 9 && tecla != 8 ){
		if ( tam <= 1 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 1) && (tam <= 3) ){
	 		campo.value = vr.substr( 0, tam - 1) + '-' + vr.substr(tam, tam - 1) ; }
	 	if ( (tam >= 4) && (tam <= 9) ){
	 		campo.value = vr.substr( 0, tam - 3 ) + '.' + vr.substr( tam - 3, 2 ) + '-' + vr.substr( tam -1 , tam ) ; }
	 	if ( (tam >= 10) && (tam <= 13) ){
	 		campo.value = vr.substr( 0, tam - 9 ) + '.' + vr.substr( tam - 9, 6 ) + '.' + vr.substr( tam - 3, 2 ) + '-' + vr.substr( tam - 1, tam ) ; }
	 	if ( (tam >= 14) && (tam <= 17) ){
	 		campo.value = vr.substr( 0, tam - 13 ) + '.' + vr.substr( tam - 13, 4 ) + '.' + vr.substr( tam - 9, 6 ) + '.' + vr.substr( tam - 3, 2 ) + '-' + vr.substr( tam - 1, tam ) ; }
	 	if ((tam >=18) && (tam <= 21)){
	 		campo.value = vr.substr (0, tam - 17) + '.' + vr.substr (tam - 17, 4) + '.' + vr.substr (tam - 13, 4) + '.' + vr.substr (tam - 9, 6) + '.' + vr.substr(tam - 3, 2) + '-' + vr.substr(tam - 1, tam);}
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de data
function teclasData(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 46 && tecla < 58) // numeros de 0 a 9 e barra (/)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de cpf
function teclasCpf(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 47 && tecla < 58 || tecla == 45 || tecla == 46 || tecla == 13) // numeros de 0 a 9 (.) e (-)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de cnpj
function teclasCnpj(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 44 && tecla < 58) // numeros de 0 a 9 (.) e (-) e (/)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de telefone
function teclasTelefone(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 47 && tecla < 58 || tecla == 45) // numeros de 0 a 9 e (-)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de valor($)
function teclasValor(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 47 && tecla < 58 || tecla == 44 || tecla == 46) // numeros de 0 a 9 e (,)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de cep
function teclasCep(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 47 && tecla < 58 || tecla == 45) // numeros de 0 a 9 e (-)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de hora
function teclasHora(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 47 && tecla < 59) // numeros de 0 a 9 e (:)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas que podem ser usadas no campo de c?digo do benefici?rio
function teclasCodBenef(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla > 47 && tecla < 58 || tecla == 45 || tecla == 46) // numeros de 0 a 9 (.) e (-)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 118 || tecla == 99 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que delimita as teclas de um campo que s? aceita letras mai?sculas e min?sculas
function soLetras(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla >= 97 && tecla <= 122 || tecla >= 65 && tecla <= 90) // numeros de 0 a 9 (.) e (-)
		return true;
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 32 || tecla == 13) // backspace e tab
			return true;
		else
			return false;
	}
}

//fun??o que conta e mostra quantos caracteres j? foram digitados no textarea
//o maximo de caracteres para o textarea ? passado como parametro na chamada da fun??o
function contador(idTextArea, idCounter, idMaxCaracter, tamMax) {
	campo = procuraObj(idTextArea);
	if ( campo ) {
		if(campo.value.length > tamMax){
			campo.value = campo.value.substring(0, tamMax);
		}
		txt_campo = procuraObj(idCounter);
		
		if ( txt_campo ){	
			txt_campo.innerHTML = campo.value.length;
		}		
		maxcarac = procuraObj(idMaxCaracter);	
		if(maxcarac){
			maxcarac.innerHTML = tamMax;
		}
	}
}

//fun??o que procura o objeto pelo id em qualquer browser (tem tamb?m no basic.js como getObj())
function procuraObj(name){
	if (document.getElementById){
	   return document.getElementById(name);
 	} else if (document.all){
       return document.all[name];
	} else if (document.layers){
	   return document.layers[name];
    }
}

//fun??o que s? aceita n?meros no campo
function soNumeros(teclapres){
	navegador = /msie/i.test(navigator.userAgent);
	if (navegador)
		var tecla = teclapres.keyCode;
	else
		var tecla = teclapres.which;

	if(tecla >= 48 && tecla <= 57){ // numeros de 0 a 9 
		return true;}
	else {
		if (tecla == 8 || tecla == 0 || tecla == 9 || tecla == 13 || tecla == 118 || tecla == 99){ // backspace e tab TIRADO BACKSPACE A PEDIDO DO CLIENTE
			return true;}
		else{
			return false;}
	}
}

//fun??o que formata como cpf os n?meros pegos no banco de dados ao carregar a p?gina
function formataCpfOnLoad(campo, tammax){
	vr = campo.value;
	tam = vr.length;
	if ( (tam == tammax)){
		campo.value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;
	}
	if ( (tam == tammax-1)){
		campo.value = '0' + vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;
	}
	if ( (tam == tammax-2)){
		campo.value = '00' + vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;
	}
}

//fun??o que formata como cnpj os n?meros pegos no banco de dados ao carregar a p?gina
function formataCnpjOnLoad(campo, tammax){
	vr = campo.value;
	tam = vr.length;
	if (tam == tammax){
		campo.value = vr.substr( 0, tam - 12 ) + '.' + vr.substr( tam - 12, 3 ) + '.' + vr.substr( tam - 9, 3 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; 
	}
}

//fun??o que formata como valor (R$) os n?meros pegos no banco de dados ao carregar a p?gina
function formataValorOnLoad(campo){
	vr = campo.value;
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );												
	tam = vr.length;
 	if ( (tam > 2) && (tam <= 5) ){
 		campo.value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; }
 	if ( (tam >= 6) && (tam <= 8) ){
 		campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
 	if ( (tam >= 9) && (tam <= 11) ){
 		campo.value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
 	if ( (tam >= 12) && (tam <= 14) ){
 		campo.value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
 	if ( (tam >= 15) && (tam <= 17) ){
 		campo.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
 	if ((tam >= 18) && (tam <= 20)){
 		campo.value = vr.substr( 0, tam - 17 ) + '.' + vr.substr(tam -17, 3) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
	if ((tam >= 21) && (tam <= 23)){
 		campo.value = vr.substr( 0, tam - 20 ) + '.' + vr.substr (tam -20, 3) + '.' + vr.substr(tam -17, 3) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}	 		
}

//fun??o que formata como cep os n?meros pegos no banco de dados ao carregar a p?gina
function formataCepOnLoad(campo, tammax){
	vr = campo.value;
	tam = vr.length;
	if (tam == tammax ){
		campo.value = vr.substr( 0, tam - 3 ) + '-' + vr.substr( tam - 3, tam );
	}
}

//fun??o que formata como C?digo do Benefici?rio os n?meros pegos no banco de dados ao carregar a p?gina
function formataCodBenefOnLoad(campo){
	vr = campo.value;
	tam = vr.length;
	if ( (tam >= 14) && (tam <= 17) ){
		campo.value = vr.substr( 0, tam - 13 ) + '.' + vr.substr( tam - 13, 4 ) + '.' + vr.substr( tam - 9, 6 ) + '.' + vr.substr( tam - 3, 2 ) + '-' + vr.substr( tam - 1, tam ) ; 
	}
}
