function mascara(o,f){
    v_obj=o
    v_fun=f
    setTimeout("execmascara()",1)
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value)
}

function leech(v){
    v=v.replace(/o/gi,"0")
    v=v.replace(/i/gi,"1")
    v=v.replace(/z/gi,"2")
    v=v.replace(/e/gi,"3")
    v=v.replace(/a/gi,"4")
    v=v.replace(/s/gi,"5")
    v=v.replace(/t/gi,"7")
    return v
}

function soNumeros(v){
    return v.replace(/\D/g,"")
}

function telefone(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 cpf(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 validacpf()
{ 
	var i; 
  		s = document.frmlogin.user.value; 
    var c = s.substr(0,9); 
    var dv = s.substr(9,2); 
    var d1 = 0; 
  		for (i = 0; i < 9; i++) 
  { 
  	d1 += c.charAt(i)*(10-i); 
  } 
  	if (d1 == 0){ 
  	alert("Por favor, o Campo CPF está em Branco ou foi informado incorretamente.") 
  return false;
} 
	d1 = 11 - (d1 % 11); 
  	if (d1 > 9) d1 = 0; 
  		if (dv.charAt(0) != d1) 
  { 
  alert("Por favor, o Campo CPF está em Branco ou foi informado incorretamente.") 
  return false; 
} 
  d1 *= 2; 
  		for (i = 0; i < 9; i++) 
  { 
  		d1 += c.charAt(i)*(11-i); 
  } 
  d1 = 11 - (d1 % 11); 
  if (d1 > 9) d1 = 0; 
  if (dv.charAt(1) != d1) 
  		{	 
  alert("Por favor, o Campo CPF está em Branco ou foi informado incorretamente.") 
	return false; 
		} 
	return false; 
}

function cep(v){
    v=v.replace(/D/g,"")                //Remove tudo o que não é dígito
    v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações
    return v
}

function oab(v){
    v=v.replace(/D/g,"")                //Remove tudo o que não é dígito
    v=v.replace(/^(\d{3})(\d)/,"$1.$2") //Esse é tão fácil que não merece explicações
    return v
}

function hora_completa(v){
	// 00:00:00
    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{2})(\d)/,"$1:$2:$3") //Coloca ponto entre o sexto e o setimo dígitos
    return v
}

function cnpj(v){
	// 000.000.000/0000-0    004.355.226/0001-6
    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
}

function ip_maquina(v){
	// 00.00.0.00    
    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{2})(\d)/,"$1.$2.$3")                                        //Coloca ponto entre o sexto e o setimo dígitos
    v=v.replace(/^(\d{2})\.(\d{2}).(\d{1})(\d)/,"$1.$2.$3.$4")                             //Coloca ponto entre o sexto e o setimo dígitos
    return v
}

function processo_tribunal(v){
	// 0000.00.000000-0    0194.07.070725-1
    v=v.replace(/\D/g,"")                           //Remove tudo o que não é dígito
    v=v.replace(/^(\d{4})(\d)/,"$1.$2")             //Coloca ponto entre o segundo e o terceiro dígitos
    v=v.replace(/^(\d{4})\.(\d{2})(\d)/,"$1.$2.$3") //Coloca ponto entre o sexto e o setimo dígitos
	v=v.replace(/(\d{6})(\d)/,"$1-$2")              //Coloca um hífen depois do bloco de quatro dígitos
    return v
}

function processo_trabalho(v){
	// 00000.0000.000.00.00.0    01028-2005-030-03-00-2
    v=v.replace(/\D/g,"")                                                                  //Remove tudo o que não é dígito
    v=v.replace(/^(\d{5})(\d)/,"$1-$2")                                                    //Coloca ponto entre o segundo e o terceiro dígitos
    v=v.replace(/^(\d{5})\-(\d{4})(\d)/,"$1-$2-$3")                                        //Coloca ponto entre o sexto e o setimo dígitos
    v=v.replace(/^(\d{5})\-(\d{4})-(\d{3})(\d)/,"$1-$2-$3-$4")                             //Coloca ponto entre o sexto e o setimo dígitos
	v=v.replace(/^(\d{5})\-(\d{4})-(\d{3})-(\d{2})(\d)/,"$1-$2-$3-$4-$5")                  //Coloca ponto entre o sexto e o setimo dígitos
	v=v.replace(/^(\d{5})\-(\d{4})-(\d{3})-(\d{2})-(\d{2})(\d)/,"$1-$2-$3-$4-$5-$6")       //Coloca ponto entre o sexto e o setimo dígitos
    return v
}

function processo_federal(v){
	// 0000.00.00.000000-0    2004.38.00.732068-6
    v=v.replace(/\D/g,"")                                     			  					               //Remove tudo o que não é dígito
    v=v.replace(/^(\d{4})(\d)/,"$1.$2")                       			  					               //Coloca ponto entre o segundo e o terceiro dígitos
    v=v.replace(/^(\d{4})\.(\d{2})(\d)/,"$1.$2.$3")           			  					               //Coloca ponto entre o sexto e o setimo dígitos
    v=v.replace(/^(\d{4})\.(\d{2})\.(\d{2})(\d)/,"$1.$2.$3.$4")           			               //Coloca ponto entre o sexto e o setimo dígitos
    v=v.replace(/^(\d{4})\.(\d{2})\.(\d{2})\.(\d{6})(\d)/,"$1.$2.$3.$4-$5")           			               //Coloca ponto entre o sexto e o setimo dígitos	
    return v
}

function romanos(v){
    v=v.toUpperCase()             //Maiúsculas
    v=v.replace(/[^IVXLCDM]/g,"") //Remove tudo o que não for I, V, X, L, C, D ou M
    //Essa é complicada! Copiei daqui: http://www.diveintopython.org/refactoring/refactoring.html
    while(v.replace(/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,"")!="")
        v=v.replace(/.$/,"")
    return v
}

function site(v){
    //Esse sem comentarios para que você entenda sozinho ;-)
    v=v.replace(/^http:\/\/?/,"")
    dominio=v
    caminho=""
    if(v.indexOf("/")>-1)
        dominio=v.split("/")[0]
        caminho=v.replace(/[^\/]*/,"")
    dominio=dominio.replace(/[^\w\.\+-:@]/g,"")
    caminho=caminho.replace(/[^\w\d\+-@:\?&=%\(\)\.]/g,"")
    caminho=caminho.replace(/([\?&])=/,"$1")
    if(caminho!="")dominio=dominio.replace(/\.+$/,"")
    v="http://"+dominio+caminho
    return v
}

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;
}

