﻿function TextBox_MaskDinamica(objeto, evt, mask)
{
	var LetrasU = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var LetrasL = 'abcdefghijklmnopqrstuvwxyz';
	var Letras  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
	var Numeros = '0123456789';
	var Fixos  = '().-:/ ';
	var Charset = " !#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_/`abcdefghijklmnopqrstuvwxyz{|}~";
	
	evt = (evt) ? evt : (window.event) ? window.event : "";
	var value = objeto.value;
	if (evt) {
		var ntecla = (evt.which) ? evt.which : evt.keyCode;
		if(ntecla == 32) return false; // BACKSPACE  
		tecla = Charset.substr(ntecla - 33, 1);
		if(ntecla == 180) return false; // ´
		if(ntecla == 168) return false; // ¨
		if(ntecla == 231) return false; // ç
		if(ntecla == 199) return false; // Ç
		if(ntecla == 32) return false;  // BACKSPACE
		if (ntecla < 33) return true;
		
		var tamanho = value.length;
		if (tamanho >= mask.length){ return false; }
		
		var pos = mask.substr(tamanho,1);
		while (Fixos.indexOf(pos) != -1) {
			value += pos;
			tamanho = value.length;
			if (tamanho >= mask.length) return false;
			pos = mask.substr(tamanho,1);
		}
	
		switch (pos) {
		case '#' : if (Numeros.indexOf(tecla) == -1) return false; break;
		}
	}
	objeto.value = value;
	return true;
}




function TextBox_BloqueiaAlfa(p_Evento)
{
    var tecla;

    if(window.event) 
    { // Internet Explorer
        tecla = event.keyCode;
    }
    else 
    { // Firefox
        tecla = evento.which;
    } 

    if(tecla >= 48 && tecla <= 57 || tecla == 8) 
        return true;
    
    return false;
}


function TextBox_FormataValor(campo,tammax,teclapres) 
{
    var tecla = (teclapres.which)?teclapres.which: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 <= 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 ) ;}
    }
}

function BloqueiaLetras(evento)
{
    var tecla;

    if(window.event) 
    { // Internet Explorer
        tecla = event.keyCode;
    }
    else 
    { // Firefox
        tecla = evento.which;
    } 

    if(tecla >= 48 && tecla <= 57 || tecla == 8) 
        return true;
    
    return false;
}
