function $(id) { return document.getElementById(id); }
function _$(id) { return parent.document.getElementById(id); }

function key() {
 	theKey = event.keyCode;
	if((theKey < 48) || (theKey > 57))
	event.returnValue = false;
	            }


function isMail(mailField){
  strMail = mailField.value;
  var re = new RegExp;
  re = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  var arr = re.exec(strMail);
  if (arr == null)
    return(false);
  else
    return(true);
}

function valida(form) {

  		if (form.nome.value == "") {
   			alert("Por favor preencha o campo Nome"); form.nome.focus();
			return false;
		}
		if (form.email.value == "") {
   			alert("Por favor preencha o campo E-mail"); form.email.focus();
			return false;
		}
		if (form.endereco.value == "") {
   			alert("Por favor preencha o campo Endereço"); form.endereco.focus();
			return false;
  		}
		if (form.bairro.value == "") {
   			alert("Por favor preencha o campo Bairro"); form.bairro.focus();
			return false;
  		}
		if (form.cidade.value == "") {
   			alert("Por favor preencha o campo Cidade"); form.cidade.focus();
			return false;
  		}
		if (form.uf.value == "UF") {
  			alert("Por favor preencha o campo UF"); form.uf.focus();
			return false;
  		}
      	if (form.cep.value == "") {
   			alert("Por favor preencha o campo CEP"); form.cep.focus();
			return false;
 		}
		if (form.msg.value == "") {
   		alert("Por favor preencha o campo Mensagem"); form.msg.focus();
		return false;
 		}
		if (!isMail(form.elements['email'])) {
    		alert("Formato incorreto de e-mail.");form.email.focus();
			return false;
		}
		return true;
}

var NS4 = (document.layers); 
var IE4 = (document.all);

var win = window;
var n = 0;

function findInPage(str) {

var txt, i, found;

if (str == "")
return false;

if (NS4) {

if (!win.find(str))
while(win.find(str, false, true))
n++;
else
n++;

if (n == 0)
alert("Empresa não encontrada.");
}

if (IE4) {
txt = win.document.body.createTextRange();

for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
txt.moveStart("character", 1);
txt.moveEnd("textedit");
}

if (found) {
txt.moveStart("character", -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
n++;
}

else {
if (n > 0) {
n = 0;
findInPage(str);
}

else
alert("Empresa não encontrada.");
}
}

return false;
}


function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function validaInscricao(frm_inscricoes) {
		I=0;
  		if (frm_inscricoes.nome.value == "") {
   			alert("Por favor preencha o campo Nome"); frm_inscricoes.nome.focus();
   			I=1;
			return false;
  		}
		if (!isMail(frm_inscricoes.elements['email'])) {
    		alert("Formato incorreto de e-mail.");frm_inscricoes.email.focus();
    		I=1;
			return false;
		}
		if (frm_inscricoes.CPF.value == "") {
  			alert("Por favor preencha o campo CPF"); frm_inscricoes.CPF.focus();
   			I=1;
			return false;
  		}
		if (frm_inscricoes.sexo.value == "") {
			alert("Por favor preencha o campo Sexo"); frm_inscricoes.sexo.focus();
			I=1;
			return false;
		}
		if (frm_inscricoes.cracha.value == "") {
   			alert("Por favor preencha o campo Nome para Crachá"); frm_inscricoes.cracha.focus();
   			I=1;
			return false;
  		}
		if (frm_inscricoes.endereco.value == "") {
			alert("Por favor preencha o campo Endereço"); frm_inscricoes.endereco.focus();
			I=1;
			return false;
		}
		if (frm_inscricoes.cidade.value == "") {
			alert("Por favor preencha o campo Cidade"); frm_inscricoes.cidade.focus();
			I=1;
			return false;
		}
		if (frm_inscricoes.tel.value == "") {
			alert("Por favor preencha o campo Telefone"); frm_inscricoes.tel.focus();
			I=1;
			return false;
		}
		if (frm_inscricoes.uf.value == "UF") {
   		alert("Por favor preencha o campo UF"); frm_inscricoes.uf.focus();
    	I=1;
		return false;
 		}
  		if (I == 0){
			if (!validaCPF(frm_inscricoes.CPF.value, 'CPF')){
				alert("CPF inválido!");
				frm_inscricoes.CPF.focus();
				return false;
				}
			if (frm_inscricoes.CNPJ.value != "") {
				if(!Verify(frm_inscricoes.CNPJ.value, 'CNPJ')){
						alert("CNPJ inválido!");
						frm_inscricoes.CNPJ.focus();
						return false;
					}
			}
		}
		
		frm_inscricoes.submit();
				
}

function validaCPF(CNUMB,CTYPE){
	if(!Verify(CNUMB, CTYPE)){
		return false;
		}
	else{
		return true;
		}
}

function ClearStr(str, char)
{
  while((cx=str.indexOf(char))!=-1)
  {		
    str = str.substring(0,cx)+str.substring(cx+1);
  }
  return(str);
}

function ParseNumb(c)
{
  c=ClearStr(c,'-');
  c=ClearStr(c,'/');
  c=ClearStr(c,',');
  c=ClearStr(c,'.');
  c=ClearStr(c,'(');
  c=ClearStr(c,')');
  c=ClearStr(c,' ');
  if((parseFloat(c) / c != 1))
  {
    if(parseFloat(c) * c == 0)
    {
      return(c);
    }
    else
    {
      return(0);
    }
  }
  else
  {
    return(c);
  }
}

function Verify(CNUMB,CTYPE)
{
  CNUMB=ParseNumb(CNUMB)
  if(CNUMB == 0)
  {
    return(false);
  }
  else
  {
    g=CNUMB.length-2;
    if(TestDigit(CNUMB,CTYPE,g))
    {
      g=CNUMB.length-1;
      if(TestDigit(CNUMB,CTYPE,g))
      {	
        return(true);
      }
      else
      {
        return(false);
      }
    }
   else
    {
      return(false);
    }
  }
}

function TestDigit(CNUMB,CTYPE,g)
{
  var dig=0;
  var ind=2;
  for(f=g;f>0;f--)
  {
    dig+=parseInt(CNUMB.charAt(f-1))*ind;
    if (CTYPE=='CNPJ')
    { if(ind>8) {ind=2} else {ind++} }
    else
    { ind++ }
  }
  dig%=11;
  if(dig<2)
  {
    dig=0;
  }
  else
  {
    dig=11-dig;
  }
  if(dig!=parseInt(CNUMB.charAt(g)))
  {
    return(false);
  }
  else
  {
    return(true);
  }
}