//
//
// BASEADO NOS TRABALHOS DO ELCIO
// http://elcio.com.br/ajax/mascara/
//
//

var v_obj, v_fun;

function Mascara(pO, pF)
{
  v_obj = pO;
  v_fun = pF;
  
  setTimeout("MascaraExec()",1);
}

function MascaraExec()
{
  v_obj.value = v_fun(v_obj.value);
}

function MascaraCpf(v)
{
  v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
  v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
  v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
                                           //de novo (para o segundo bloco de números)
  v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos
  return v
}

function MascaraInt(v)
{
  v=v.replace(/\D/g, "")
  
  return v
}

function MascaraUCase(v)
{
  v=v.toUpperCase()
  
  return v
}

function MascaraLCase(v)
{
  v=v.toLowerCase()
  
  return v
}

function MascaraTelefone(v)
{
  v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
  v=v.replace(/^(\d\d)(\d)/g,"($1)$2") //Coloca parênteses em volta dos dois primeiros dígitos
  v=v.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos
  return v
}

function MascaraCep(v)
{
  v=v.replace(/\D/g,"")                //Remove tudo o que não é dígito
  v=v.replace(/^(\d{2})(\d)/,"$1.$2") 
  v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2-$3") //Esse é tão fácil que não merece explicações
  return v
}

function MascaraData(v)
{
  v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
  v=v.replace(/^(\d{2})(\d)/g,"$1/$2")   //Coloca primeira barra
  v=v.replace(/(\d{2})(\d)/,"$1/$2")    //Coloca segunda barra
  return v
}

function MascaraCnpj(v)
{
  v=v.replace(/\D/g,"")                           //Remove tudo o que não é dígito
  v=v.replace(/^(\d{2})(\d)/,"$1.$2")             //Coloca ponto entre o segundo e o terceiro dígitos
  v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") //Coloca ponto entre o quinto e o sexto dígitos
  v=v.replace(/\.(\d{3})(\d)/,".$1/$2")           //Coloca uma barra entre o oitavo e o nono dígitos
  v=v.replace(/(\d{4})(\d)/,"$1-$2")              //Coloca um hífen depois do bloco de quatro dígitos

  return v
}


