function ContadorTexto(field, countfield, maxlimit) 
{
    if (field.value.length > maxlimit) 
    {
        field.value = field.value.substring(0, maxlimit);
    }
    else 
    {
        document.getElementById(countfield).innerHTML = maxlimit - field.value.length;
    }
}

//FUNÇÃO PARA FORMATAR  MÁSCARA DE VALOR
function FormataMascara(objeto, sMask, evtKeyPress) {

	var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;
	
	if(document.all) 
	{ // Internet Explorer
		
		nTecla = evtKeyPress.keyCode;
	} 
	else if(document.layers) 
	{ // Nestcape
		
		nTecla = evtKeyPress.which;
		
	} 
	else 
	{
		
		nTecla = evtKeyPress.which;
		
		if (nTecla == 8) 
		{
			return true;
		}
	}
	
	sValue = objeto.value;
	
	// Limpa todos os caracteres de formatação que
	// já estiverem no campo.
	sValue = sValue.toString().replace( "-", "" );
	sValue = sValue.toString().replace( "-", "" );
	sValue = sValue.toString().replace( ".", "" );
	sValue = sValue.toString().replace( ".", "" );
	sValue = sValue.toString().replace( "/", "" );
	sValue = sValue.toString().replace( "/", "" );
	sValue = sValue.toString().replace( ":", "" );
	sValue = sValue.toString().replace( ":", "" );
	sValue = sValue.toString().replace( "(", "" );
	sValue = sValue.toString().replace( "(", "" );
	sValue = sValue.toString().replace( ")", "" );
	sValue = sValue.toString().replace( ")", "" );
	sValue = sValue.toString().replace( " ", "" );
	sValue = sValue.toString().replace( " ", "" );
	fldLen = sValue.length;
	mskLen = sMask.length;
	
	i = 0;
	nCount = 0;
	sCod = "";
	mskLen = fldLen;
	
	while (i <= mskLen) 
	{
		bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))
		bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))
		
		if (bolMask) 
		{
			
			sCod += sMask.charAt(i);
			mskLen++; 
			
		}
		else 
		{
			
			sCod += sValue.charAt(nCount);
			nCount++;
			
		}
		
		i++;
	}
	
	objeto.value = sCod;
	
	if (nTecla != 8) 
	{ // backspace
		
		if (sMask.charAt(i-1) == "9") 
		{ // apenas números...
			
			return ((nTecla > 47) && (nTecla < 58)); 
			
		} 
		else
		{ // qualquer caracter...
			
			return true;
			
		} 
	}
	else 
	{
		return true;
	}
}

// função para colocar o texto em caixa alta
function TextBoxCaixaAlta_OnKeyUp(fsValor, foForm, foNome) 
{ 
	if (window.event.keyCode >= 65 && window.event.keyCode <= 90)
	{
		
		x = new String(document.forms[foForm].elements[foNome].value);
		document.forms[foForm].elements[foNome].value = x.toUpperCase();
		
	}
}

function TextBoxCaixaAlta_OnBlur(fsValor, foForm, foNome)
{ 	
	var tam=0;
	x = new String(document.forms[foForm].elements[foNome].value);
	
	while (tam != x.length)
	{
		
		tam = x.length;
		x = x.replace('\'', '');
		
	}
	
	document.forms[foForm].elements[foNome].value = x.toUpperCase();
}

//Formata moeda somente em evento
function formatar_moeda(campo, separador_milhar, separador_decimal, tecla) 
{
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var whichCode = (window.Event) ? tecla.which : tecla.keyCode;

	if (whichCode == 13)
	{
		return true; // Tecla Enter
	}
	
	if (whichCode == 8)
	{
		return true; // Tecla Delete
	}
	
	key = String.fromCharCode(whichCode); // Pegando o valor digitado
	
	if (strCheck.indexOf(key) == -1)
	{
		return false; // Valor inválido (não inteiro)
	}
	
	len = campo.value.length;
	
	for(i = 0; i < len; i++)
	{
		if ((campo.value.charAt(i) != '0') && (campo.value.charAt(i) != separador_decimal)) 
		{
			break;
		}
	}
	
	aux = '';
	
	for(; i < len; i++)
	{
		if (strCheck.indexOf(campo.value.charAt(i))!=-1)
		{
			aux += campo.value.charAt(i);
		}
	}
	
	aux += key;
	len = aux.length;
	
	if (len == 0) 
	{
		campo.value = '';
	}
	
	if (len == 1)
	{
		campo.value = '0'+ separador_decimal + '0' + aux;
	}
	
	if (len == 2) 
	{
		campo.value = '0'+ separador_decimal + aux;
	}

	if (len > 2) 
	{
		aux2 = '';
		
		for (j = 0, i = len - 3; i >= 0; i--) 
		{
			if (j == 3) 
			{
				aux2 += separador_milhar;
				j = 0;
			}
			
			aux2 += aux.charAt(i);
			j++;
		}
		
		campo.value = '';
		len2 = aux2.length;
		
		for (i = len2 - 1; i >= 0; i--)
		{
			campo.value += aux2.charAt(i);
		}
		
		campo.value += separador_decimal + aux.substr(len - 2, len);
	}

	return false;
}

