//Funcao da Mascara
//Responsavél: Marcelo Abib Cardoso
//Data: 10/02/2006
function fnMascara(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;
 	tecla = Charset.substr(ntecla - 32, 1);
 	if (ntecla < 32) 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;
   			case 'A' : if (LetrasU.indexOf(tecla) == -1) return false; break;
   			case 'a' : if (LetrasL.indexOf(tecla) == -1) return false; break;
   			case 'Z' : if (Letras.indexOf(tecla) == -1) return false; break;
   			case '*' : objeto.value = value; return true; break;
   			default : return false; break;
 		}
	}
	objeto.value = value;
	return true;
}

//Mascara para CPF - no campo: onkeypress="return fnMascaraCPF(this, event);"
//Responsavél: Marcelo Abib Cardoso
//Data: 10/02/2006
function fnMascaraCPF(objeto, evt)
{
	return fnMascara(objeto, evt, '###.###.###-##');
}

//Mascara para CEP - no campo: onkeypress="return fnMascaraCEP(this, event);"
//Responsavél: Marcelo Abib Cardoso
//Data: 10/02/2006
function fnMascaraCEP(objeto, evt) 
{
	return fnMascara(objeto, evt, '#####-###');
}

//Mascara para Telefone - no campo: onkeypress="return fnMascaraTelefone(this, event);"
//Responsavél: Marcelo Abib Cardoso
//Data: 10/02/2006
function fnMascaraTelefone(objeto, evt)
{
	return fnMascara(objeto, evt, '(##) ####-####');
}

//Mascara para placa de carro - no campo: onkeypress="return fnMascaraPlacaCarro(this, event);"
//Responsavél: Marcelo Abib Cardoso
//Data: 10/02/2006
function fnMascaraPlacaCarro(objeto, evt)
{
	return fnMascara(objeto, evt, 'AAA-####');
}

//Mascara para Data - no campo: onkeypress="return fnMascaraData(this, event);"
//Responsavél: Marcelo Abib Cardoso
//Data: 10/02/2006
function fnMascaraData(objeto, evt)
{
	return fnMascara(objeto, evt, '##/##/####');
}