function Mascarar_CNPJ(objeto,tammax,teclapres)

{



	var keypress = teclapres.keyCode;

	campo = eval(objeto);

	

	if (keypress != 8) {



		if (campo.value.length == 2 ) { 

			campo.value = campo.value;

			campo.value = campo.value + '.';

		}

		if (campo.value.length == 6 ) { 

			campo.value = campo.value;

			campo.value = campo.value + '.';

		}

		if (campo.value.length == 10 ) { 

			campo.value = campo.value;

			campo.value = campo.value + '/';

		}

		if (campo.value.length == 15 ) { 

			campo.value = campo.value;

			campo.value = campo.value + '-';

		}

	}

	

}



function Resto(S)

{

	var invertido = Inverte(Limpa(S));

	var soma = 0;

	for (var i=0; i<invertido.length; i++) {

		soma = soma + (i+2) * eval(invertido.charAt(i));

	}

	soma *= 10;

	return ((soma % 11) % 10);

}



function Limpa(S)

{

	var Digitos = "0123456789";

	var temp = "";

	var digito = "";

	for (var i=0; i<S.length; i++){

		digito = S.charAt(i);

		if (Digitos.indexOf(digito)>=0) {

			temp = temp + digito;

		}

	}

	return temp;

}



function Inverte(S)

{

	var temp = "";

	for (var i=0; i<S.length; i++) {

		temp = S.charAt(i) + temp;

	}

    return temp;

}



function Testar_Cnpj(cnpj,g)

{

	var vercnpj = 0;

	var ind = 2;

	var tam;

	for(f=g;f>0;f--) {

		vercnpj += parseInt(cnpj.charAt(f-1))*ind;

		if(ind>8) {

			ind = 2;

		}

		else {

			ind++;

		}

	}

	vercnpj %= 11;

	if(vercnpj == 0 || vercnpj == 1) {

		vercnpj = 0;

	}

	else {

		vercnpj = 11 - vercnpj;

	}

	if(vercnpj != parseInt(cnpj.charAt(g))) {

		return(0);

	}

	else {

		return(1);

	}

}



function Validar_CNPJ(cnpj)

{

	cnpj = Limpa(cnpj);

	if(cnpj == 0) {

		return (false);

	}

	else {

		g = cnpj.length-2;

		if(Testar_Cnpj(cnpj,g) == 1) {

			g = cnpj.length-1;

			if(Testar_Cnpj(cnpj,g) == 1) {	

				return (true);

			}

			else {

				return (false);

			}

		}

		else {

			return (false);

		}

	}

}

