function mascara(o,f){
    v_obj=o
    v_fun=f
    setTimeout("execmascara()",1)
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value)
}

function mleech(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 msoNumeros(v){
    return v.replace(/\D/g,"")
}

function mDesconto(v){
    if(v > 5) {
    	alert("Desconto invalido")
    	v=0
    }
    else {
    	v=v.replace(/\D/g,"")
    }
	return v
}

function mdata(v){
	v=v.replace(/\D/g,"")
    v=v.replace(/(\d{2})(\d)/,"$1/$2")       
    v=v.replace(/(\d{2})(\d)/,"$1/$2")
	return v;
}

function mtelefone(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 mcpf(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 mcep(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 mcnpj(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
}

function msite(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
}

/* VALIDACAO CPF / CNPJ */
''
function campo_numerico (){
    if (event.keyCode < 45 || event.keyCode > 57) event.returnValue = false;
}

/*function cnpj_cpf verifica qual das funcoes tem que chamar cpf ou cnpj*/

function cnpj_cpf(campo,documento,f,formi){
 form = formi;

 for (Count = 0; Count < 2; Count++){

    if (form.rad[Count].checked)
       break;
 }


 if (Count == 0){
    mascara_cpf (campo,documento,f);
 }

 else{
    mascara_cnpj (campo,documento,f);
 }
}

function mascara_cnpj (campo,documento,f){
 var mydata = '';
 mydata = mydata + documento;

 if (mydata.length == 2){
    mydata   = mydata + '.';

    ct_campo = eval("document.getElementById('cgccli').value = mydata");
    ct_campo;
 }

 if (mydata.length == 6){
          mydata   = mydata + '.';

          ct_campo = eval("document.getElementById('cgccli').value = mydata");
          ct_campo;
 }

 if (mydata.length == 10){
    mydata      = mydata + '/';

    ct_campo1 = eval("document.getElementById('cgccli').value = mydata");
    ct_campo1;
 }

 if (mydata.length == 15){
          mydata      = mydata + '-';

          ct_campo1 = eval("document.getElementById('cgccli').value = mydata");
          ct_campo1;
 }

 if (mydata.length == 18){

    valida_cnpj(f,campo);
 }
}

function mascara_cpf (campo,documento,f){
    var mydata = '';
    mydata = mydata + documento;

    if (mydata.length == 3){
       mydata   = mydata + '.';

       ct_campo = eval("document.getElementById('cgccli').value = mydata");
       ct_campo;
    }

    if (mydata.length == 7){
             mydata   = mydata + '.';

             ct_campo = eval("document.getElementById('cgccli').value = mydata");
             ct_campo;
    }

    if (mydata.length == 11){
       mydata      = mydata + '-';

       ct_campo1 = eval("document.getElementById('cgccli').value = mydata");
       ct_campo1;
    }

    if (mydata.length == 14){

       valida_cpf(f,campo);
    }

}

function valida_cnpj(f,campo){
    pri = eval("document.getElementById('cgccli').value.substring(0,2)");
    seg = eval("document.getElementById('cgccli').value.substring(3,6)");
    ter = eval("document.getElementById('cgccli').value.substring(7,10)");
    qua = eval("document.getElementById('cgccli').value.substring(11,15)");
    qui = eval("document.getElementById('cgccli').value.substring(16,18)");

    var i;
    var numero;
    var situacao = '';

    numero = (pri+seg+ter+qua+qui);

    s = numero;

    c = s.substr(0,12);
    var dv = s.substr(12,2);
    var d1 = 0;

    for (i = 0; i < 12; i++){
       d1 += c.charAt(11-i)*(2+(i % 8));
    }

    if (d1 == 0){
       var result = "falso";
    }
       d1 = 11 - (d1 % 11);

    if (d1 > 9) d1 = 0;

       if (dv.charAt(0) != d1){
          var result = "falso";
       }

    d1 *= 2;
    for (i = 0; i < 12; i++){
       d1 += c.charAt(11-i)*(2+((i+1) % 8));
    }

    d1 = 11 - (d1 % 11);
    if (d1 > 9) d1 = 0;

       if (dv.charAt(1) != d1){
          var result = "falso";
       }


    if (result == "falso") {
       alert("CNPJ inválido!");
       aux1 = eval("document."+f+"."+campo+".focus");
       aux2 = eval("document."+f+"."+campo+".value = ''");

    }
}

function valida_cpf(f,campo){
    pri = eval("document.getElementById('cgccli').value.substring(0,3)");
    seg = eval("document.getElementById('cgccli').value.substring(4,7)");
    ter = eval("document.getElementById('cgccli').value.substring(8,11)");
    qua = eval("document.getElementById('cgccli').value.substring(12,14)");

    var i;
    var numero;

    numero = (pri+seg+ter+qua);

    s = numero;
    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){
       var result = "falso";
    }

    d1 = 11 - (d1 % 11);
    if (d1 > 9) d1 = 0;

    if (dv.charAt(0) != d1){
       var result = "falso";
    }

    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){
       var result = "falso";
    }

    if (result == "falso") {
       alert("CPF inválido!");
       aux1 = eval("document.getElementById('cgccli').focus");
       aux2 = eval("document.getElementById('cgccli').value = ''");

    }
}

