function isCNPJ(campo,y, mensagem)
{
	strNum = '';
	var st = campo.value;
	if ( (st == '11111111111') || (st == '00000000000') ||
	     (st == '22222222222') || (st == '33333333333') ||
		 (st == '44444444444') || (st == '55555555555') ||
		 (st == '66666666666') || (st == '77777777777') ||
		 (st == '88888888888') || (st == '99999999999') ||
		 (st == '515') || (st == '27200191') ||
		 (st == '191') || (st == '515515') ||
		 (st == '515515515') )
		{
			if (y != null)
			{
				document.getElementById("erro_"+y).style.display="block";
				document.getElementById("erro_"+y).innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			} else {
				document.getElementById("erro").style.display="block";
				erro.innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			}
			
			//alert('CNPJ incorreto, por favor redigite.');
			
			campo.value = '';
			campo.focus();
			return false;
		}

	if (campo.value == '')
	{
		if (y != null)
			{
				document.getElementById("erro_"+y).style.display="block";
				document.getElementById("erro_"+y).innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			} else {
				document.getElementById("erro").style.display="block";
				erro.innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			}
			//alert('CNPJ incorreto, por favor redigite.');
			campo.value = '';
			campo.focus();
			return (false);
    	}

	l = campo.value.length;
    	for (i = 0; i < 14-l; i++)
    	{
		campo.value = '0' + campo.value;
		}

   	l = campo.value.length;
	for (i = 0; i < l; i++) {
		caracter = campo.value.substring(i, i+1)
		if ((caracter >= 0) && (caracter <= 9))
			strNum = strNum + caracter;
	}

   	strMul = '6543298765432';
	iValido = 1;

	if (strNum.length != 14) {
		
		if (y != null)
			{
				document.getElementById("erro_"+y).style.display="block";
				document.getElementById("erro_"+y).innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			} else {
				document.getElementById("erro").style.display="block";
				erro.innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			}

			//alert('CNPJ incorreto, por favor redigite.');
			campo.value = '';
			campo.focus();
			return (false);
	}

	iSoma = 0;
	strNum_base = strNum.substring(0, 12);
	iLenNum_base = strNum_base.length - 1;
	iLenMul = strMul.length - 1;

    	for(i = 0;i < 12; i++)
		iSoma = iSoma + parseInt(strNum_base.substring((iLenNum_base-i),(iLenNum_base-i)+1),10) * parseInt(strMul.substring((iLenMul-i),(iLenMul-i)+1),10);

	iSoma = 11 - (iSoma - Math.floor(iSoma/11) * 11);

	if (iSoma == 11 || iSoma == 10)
		iSoma = 0;

	strNum_base = strNum_base + iSoma;
  	iSoma = 0;

	iLenNum_base = strNum_base.length - 1

	for(i=0; i < 13; i++)
		iSoma = iSoma + parseInt(strNum_base.substring((iLenNum_base-i),(iLenNum_base-i)+1),10) * parseInt(strMul.substring((iLenMul-i),(iLenMul-i)+1),10);

	iSoma = 11 - (iSoma - Math.floor(iSoma/11) * 11);

	if(iSoma == 11 || iSoma == 10)
		iSoma = 0;

	strNum_base = strNum_base + iSoma;

	if(strNum != strNum_base)
	{
		
		if (y != null)
			{
				document.getElementById("erro_"+y).style.display="block";
				document.getElementById("erro_"+y).innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			} else {
				document.getElementById("erro").style.display="block";
				erro.innerHTML = "<img src='/img/cadastro/msg_iconalert.gif' hspace='2'>" + mensagem;
			}

			//alert('CNPJ incorreto, por favor redigite.');
			campo.value = '';
			campo.focus();
			return (false);
	}
	return (true);
}
