////////////////////////////////////////////////////////////////
// * criaMascara - Cria uma máscara em input text
// Uso: OnKeyUp="criaMascara(this, '##.###.###-#');"
///////////////////////////////////////////////////////////////
  function criaMascara(_RefObjeto, _Modelo){
    var valorAtual = _RefObjeto.value;        
    var valorNumerico = '';
    var nIndexModelo = 0;
    var nIndexString = 0;
    var valorFinal = '';
    var adicionarValor = true;
     
    // limpa a string valor atual para verificar 
    // se todos os caracteres são números
    for (i=0;i<_Modelo.length;i++){
        if (_Modelo.substr(i,1) != '#') {
          valorAtual = valorAtual.replace(_Modelo.substr(i,1),'');
      	}
	}
      
	// verifica se todos os caracteres são números
	for (i=0;i<valorAtual.length;i++){
		if (!isNaN(parseFloat(valorAtual.substr(i,1)))) {
			valorNumerico = valorNumerico + valorAtual.substr(i,1);
		}
	}

	// aplica a máscara ao campo informado usando
	// o modelo de máscara informado no script
	for (i=0;i<_Modelo.length;i++) {

		if (_Modelo.substr(i,1) == '#'){
			if (valorNumerico.substr(nIndexModelo,1) != ''){
				valorFinal = valorFinal + valorNumerico.substr(nIndexModelo,1);
				nIndexModelo++;nIndexString++;
          	} else {
				adicionarValor = false;
			}
		} else {
			if (adicionarValor && valorNumerico.substr(nIndexModelo,1) != '') {
				valorFinal = valorFinal + _Modelo.substr(nIndexString,1)
				nIndexString++;
			}
		}
	}
	//alert(valorFinal)
	_RefObjeto.value = valorFinal 

  }


////////////////////////////////////////////////////////////////
// * LimitaCampo - Limita a quantidade de caracteres em um textarea
// Uso: OnKeyUp="LimitaCampo(this, 100, 'campo_contador');"
// 		o campo_contador será o ID de um input que armazenará a 
//		quantidade de caracteres do textarea
///////////////////////////////////////////////////////////////
function LimitaCampo(campo,tam,campo_contador){
	var tamanho = document.form[campo].value.length;
	var tex=document.form[campo].value;
	if (tamanho>=tam) {
		document.form[campo].value=tex.substring(0,tam); 
	}
	
	if (campo_contador != '' && document.getElementById('campo_contador')) {
		document.getElementById('campo_contador').value = $tamanho;
	}
	
	return true;
}


////////////////////////////////////////////////////////////////
// * FormataValor - Script que formata Valores em reais ao digitar
// Uso: onKeyPress="return(MascaraMoeda(this,'.',',',event))"> 
///////////////////////////////////////////////////////////////
function MascaraMoeda(objTextBox, SeparadorMilesimo, SeparadorDecimal, e){
    var sep = 0;
    var key = '';
    var i = j = 0;
    var len = len2 = 0;
    var strCheck = '0123456789';
    var aux = aux2 = '';
    var whichCode = (window.Event) ? e.which : e.keyCode;
    if (whichCode == 13) return true;
    key = String.fromCharCode(whichCode); // Valor para o código da Chave
    if (strCheck.indexOf(key) == -1) return false; // Chave inválida
    len = objTextBox.value.length;
    for(i = 0; i < len; i++)
        if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) break;
    aux = '';
    for(; i < len; i++)
        if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) aux += objTextBox.value.charAt(i);
    aux += key;
    len = aux.length;
    if (len == 0) objTextBox.value = '';
    if (len == 1) objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
    if (len == 2) objTextBox.value = '0'+ SeparadorDecimal + aux;
    if (len > 2) {
        aux2 = '';
        for (j = 0, i = len - 3; i >= 0; i--) {
            if (j == 3) {
                aux2 += SeparadorMilesimo;
                j = 0;
            }
            aux2 += aux.charAt(i);
            j++;
        }
        objTextBox.value = '';
        len2 = aux2.length;
        for (i = len2 - 1; i >= 0; i--)
        objTextBox.value += aux2.charAt(i);
        objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
    }
    return false;
}


////////////////////////////////////////////////////////////////
// * SaltaCampo - Salta o tempo quando ultrapassar o limite de caracteres
// Uso: onKeyUp="SaltaCampo(this,'campoid',2);"> 
///////////////////////////////////////////////////////////////
function SaltaCampo(campo,proximoid,tammax){
	var tamanho = campo.length;
	if (tamanho >= tammax) {
		if (document.getElementById(proximoid)) document.getElementById(proximoid).focus();
	}
}



////////////////////////////////////////////////////////////////
// * getCheckedValue - Retorna o RADIO selecionado
// * setCheckedValue - Seleciona um valor do RADIO especificado
///////////////////////////////////////////////////////////////
function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}
function setCheckedValue(radioObj, newValue) {
	if(!radioObj)
		return;
	var radioLength = radioObj.length;
	if(radioLength == undefined) {
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}





