function limpa_valor(obj_valor){
 // deixa somente os valores
 valor_limpo = '';
 for(i=0;i<obj_valor.length;i++){
  if(obj_valor.charAt(i)>=0 && obj_valor.charAt(i)<=9){
   valor_limpo = valor_limpo + "" + obj_valor.charAt(i);
  }
 }
 return valor_limpo;
}
function mascara_moeda(obj_valor){
 // deixa somente os valores
 valor_limpo = limpa_valor(obj_valor);
 
 // coloca os pontos no lugar certo
 valor_formatado = '';
 for(j=0, i=valor_limpo.length-1; i>=0; j++,i--){
  if(j==2){
   valor_formatado = ',' + valor_formatado;
  }else{
   if(j==5) j=6;// para acertar de 3 em 3 daqui por diante
   if(j>3 && j%3==0){
    valor_formatado = '.' + valor_formatado;
   }
  }
  valor_formatado = valor_limpo.charAt(i)+''+valor_formatado;
 }
 return valor_formatado;
}
function valida_mascara(obj,tipo){
 codigo = event.keyCode;
 
 if((!(codigo>=35 && codigo<=40)) && codigo!=9 && codigo!=16 && codigo!=46 && codigo!=8){
  switch(tipo){
   case "moeda":
    obj.value = mascara_moeda(obj.value);
   break;
   case "data":
    obj.value = mascara_data(obj.value);
   break;
   case "data_pa":
    obj.value = mascara_data_pa(obj.value);
   break;
   case "cep":
	obj.value = mascara_cep(obj.value);
   break;
   case "numero":
    //alert('ok');
    obj.value = mascara_numero(obj.value);
   break;
   case "cnpj_final":
	obj.value = mascara_cnpj_final(obj.value);
   break;
   default:
    //alert('erro');
    obj.value = mascara_cnpjcpf(obj.value);
   break;
  }
 }
}
function mascara_numero(obj_valor){
	// deixa somente os valores
	valor_limpo = limpa_valor(obj_valor);

	// coloca os pontos no lugar certo
	valor_formatado = '';
	for(j=0, i=valor_limpo.length-1; i>=0; j++,i--){
		//if(j==3){
		//	valor_formatado = '-' + valor_formatado;
		//}
		valor_formatado = valor_limpo.charAt(i)+''+valor_formatado;
	}
	return valor_formatado;
}
function ehnumero(codigo){
 if( (codigo>=96 && codigo<=105) || (codigo>=48 && codigo<=57) || (codigo>=35 && codigo<=40) || codigo==8 || codigo==9 || codigo==13 || codigo==46){
  return true;
 }else{
  return false;
 }
}
function mascara_data(obj_valor){
 // deixa somente os valores
 valor_limpo = limpa_valor(obj_valor);
 
 // coloca os pontos no lugar certo
 valor_formatado = '';
 for(i=0;i<valor_limpo.length;i++){
  barra = '';
  if(i==1) barra = '/';
  if(i==3) barra = '/';
  valor_formatado += valor_limpo.charAt(i)+''+barra;
 }
 return valor_formatado;
}