/************************************************
* function verificaCPF
* Verifica se um CPF é válido
* Input: cpf a ser verificado
************************************************/


function verificaCPF(cpf)
{
   var dac = "", inicio = 2, fim = 10, soma, digito, i, j
   for (j=1;j<=2;j++) {
      soma = 0
      for (i=inicio;i<=fim;i++) {
         soma += parseInt(cpf.substring(i-j-1,i-j))*(fim+1+j-i)
      }
      if (j == 2) { soma += 2*digito }
      digito = (10*soma) % 11
      if (digito == 10) { digito = 0 }
      dac += digito
      inicio = 3
      fim = 11
   }
   return (dac == cpf.substring(cpf.length-2,cpf.length))
}

function isEmpty(s)
{
   return ((s == null) || (s.length == 0));
}

function checkField(s)
{
   if ((s.indexOf("&")>=0) || (s.indexOf("<")>=0) || (s.indexOf(">")>=0) || (s.indexOf("|")>=0)) { 
      return false;
   }
   return true;
}

function warnInvalid (theField, s, EmptyOK)
{   theField.focus()
    theField.select()
      if (EmptyOK) {
         alert('O campo '+s+' contém caracteres inválidos!\nOs caracteres ">", "<", "&" e "|" não são aceitos pelo sistema.')
      } else {
         alert('O campo '+s+' deve ser preenchido!\nOs caracteres ">", "<", "&" e "|" não são aceitos pelo sistema.')
      }
    return false
}

function verifica_cadastro(){

/*
        Nome
        Contato
        email
*/
   if (!checkField(document.form.Nome.value) || isEmpty(document.form.Nome.value)) {
      warnInvalid (document.form.Nome, 'Nome', false);
      return false;
   }
   if (!checkField(document.form.Contato.value) || isEmpty(document.form.Contato.value)) {
      warnInvalid (document.form.Contato, 'Contato', false);
      return false;
   }
   if (!checkField(document.form.email.value) || isEmpty(document.form.email.value)) {
      warnInvalid (document.form.email, 'e-mail', false);
      return false;
   }
   return true;

}

function verifica_contato(){
/*
        Nome
        email
        Assunto
        Comentarios
*/

   if (!checkField(document.form.Nome.value) || isEmpty(document.form.Nome.value)) {
      warnInvalid (document.form.Nome, 'Nome', false);
      return false;
   }
   if (!checkField(document.form.email.value) || isEmpty(document.form.email.value)) {
      warnInvalid (document.form.email, 'e-mail', false);
      return false;
   }
   if (!checkField(document.form.Assunto.value) || isEmpty(document.form.Assunto.value)) {
      warnInvalid (document.form.Assunto, 'Assunto', false);
      return false;
   }
   if (!checkField(document.form.Comentarios.value) || isEmpty(document.form.Comentarios.value)) {
      warnInvalid (document.form.Comentarios, 'Comentarios', false);
      return false;
   }
   return true;

}

function verifica_cadastro_antigo(){


   if (!document.form.cd_ass_pessoa[0].checked && 
       !document.form.cd_ass_pessoa[1].checked) {
      alert('Informe se é pessoa fisica ou juridica !');
/*      warnInvalid (document.form.cd_ass_pessoa, 'Pessoa', false);*/
      return false;
   }
  
   if (document.form.cd_ass_pessoa[0].checked) {
     if(isEmpty(document.form.cd_ass_cpf.value) || !verificaCPF(document.form.cd_ass_cpf.value))
     {
        warnInvalid(document.form.cd_ass_cpf,'O CPF está vazio ou é inválido!');
        return false;
     }
	 
     if (!checkField(document.form.ds_ass_nome.value) || isEmpty(document.form.ds_ass_nome.value)) {
        warnInvalid (document.form.ds_ass_nome, 'Nome', false);
        return false;
     }
   
     if (!checkField(document.form.ds_ass_empresa.value)) {
        warnInvalid (document.form.ds_ass_empresa, 'Empresa', true);
        return false;
     }
	 
   }

   if (document.form.cd_ass_pessoa[1].checked) {
     if (!checkField(document.form.cd_ass_cpf.value) || isEmpty(document.form.cd_ass_cpf.value)) {
        warnInvalid (document.form.cd_ass_cpf, 'CNPJ', false);
        return false;
     }

     if (!checkField(document.form.ds_ass_nome.value) || isEmpty(document.form.ds_ass_nome.value)) {
        warnInvalid (document.form.ds_ass_nome, 'Nome', false);
        return false;
     }
   
     if (!checkField(document.form.ds_ass_empresa.value) || isEmpty(document.form.ds_ass_empresa.value)) {
        warnInvalid (document.form.ds_ass_empresa, 'Empresa', false);
        return false;
     }
   }

   if (!checkField(document.form.ds_ass_endereco.value) || isEmpty(document.form.ds_ass_endereco.value)) {
      warnInvalid (document.form.ds_ass_endereco, 'Endereço', false);
      return false;
   }
   if (!checkField(document.form.cd_ass_nro.value) || isEmpty(document.form.cd_ass_nro.value)) {
      warnInvalid (document.form.cd_ass_nro, 'Numero', false);
      return false;
   }
   if (!checkField(document.form.ds_ass_compl.value)) {
      warnInvalid (document.form.ds_ass_compl, 'Complemento', true);
      return false;  
   }
   if (!checkField(document.form.ds_ass_bairro.value) || isEmpty(document.form.ds_ass_bairro.value)) {
      warnInvalid (document.form.ds_ass_bairro, 'Bairro', false);
      return false;  
   }
   if (!checkField(document.form.ds_ass_cidade.value) || isEmpty(document.form.ds_ass_cidade.value)) {
      warnInvalid (document.form.ds_ass_cidade, 'Cidade', false);
      return false;  
   }
   if (!checkField(document.form.cd_ass_uf.value) || isEmpty(document.form.cd_ass_uf.value)) {
      warnInvalid (document.form.cd_ass_uf, 'Estado', false);
      return false;  
   }
   
   if (!checkField(document.form.cd_ass_cep.value)) {
      warnInvalid (document.form.cd_ass_cep, 'CEP', true);
      return false;  
   }
   if (!checkField(document.form.cd_ass_fone.value)) {
      warnInvalid (document.form.cd_ass_fone, 'Telefone', true);
      return false;  
   }
   if (!checkField(document.form.cd_ass_email.value) || isEmpty(document.form.cd_ass_email.value)) {
      warnInvalid (document.form.cd_ass_email, 'Email', false);
      return false;  
   }  
   if (!checkField(document.form.cd_ass_senha.value) || isEmpty(document.form.cd_ass_senha.value)) {
      warnInvalid (document.form.cd_ass_senha, 'Senha', false);
      return false;  
   }  
   if (!checkField(document.form.conf_senha.value) || isEmpty(document.form.conf_senha.value)) {
      warnInvalid (document.form.conf_senha, 'Senha', false);
      return false;  
   }  
   if (document.form.cd_ass_senha.value != document.form.conf_senha.value) {
      alert('A senha nao esta igual a confirmacao da senha. Redigite !');
      document.form.cd_ass_senha.value = '';
      document.form.conf_senha.value = '';
      document.form.cd_ass_senha.focus();
      document.form.cd_ass_senha.select();
      return false;
   }

   return true;

}

function verifica_pedido(){

   if (!checkField(document.form.cd_ent_endereco.value) || isEmpty(document.form.cd_ent_endereco.value)) {
      warnInvalid (document.form.cd_ent_endereco, 'Endereço', false);
      return false;
   }
   if (!checkField(document.form.cd_ent_nro.value) || isEmpty(document.form.cd_ent_nro.value)) {
      warnInvalid (document.form.cd_ent_nro, 'Numero', false);
      return false;
   }
   if (!checkField(document.form.cd_ent_compl.value)) {
      warnInvalid (document.form.cd_ent_compl, 'Complemento', true);
      return false;  
   }
   if (!checkField(document.form.ds_ent_ptorefer.value) || isEmpty(document.form.ds_ent_ptorefer.value)) {
      warnInvalid (document.form.ds_ent_ptorefer, 'Ponto de Referencia', false);
      return false;  
   }
   if (!checkField(document.form.cd_ent_bairro.value) || isEmpty(document.form.cd_ent_bairro.value)) {
      warnInvalid (document.form.cd_ent_bairro, 'Bairro', false);
      return false;  
   }
   if (!checkField(document.form.cd_ent_cidade.value) || isEmpty(document.form.cd_ent_cidade.value)) {
      warnInvalid (document.form.cd_ent_cidade, 'Cidade', false);
      return false;  
   }
   if (!checkField(document.form.cd_ent_uf.value) || isEmpty(document.form.cd_ent_uf.value)) {
      warnInvalid (document.form.cd_ent_uf, 'Estado', false);
      return false;  
   }
   if (!checkField(document.form.cd_ent_cep.value)) {
      warnInvalid (document.form.cd_ent_cep, 'CEP', true);
      return false;  
   }
   if (!checkField(document.form.ds_ent_destinat.value)) {
      warnInvalid (document.form.ds_ent_destinat, 'Destinatario', true);
      return false;  
   }
   if (!checkField(document.form.ds_ent_mensagem.value)) {
      warnInvalid (document.form.ds_ent_mensagem, 'Mensagem', true);
      return false;  
   }
   if (isEmpty(document.form.cd_forma_pagto.value)) {
      warnInvalid (document.form.cd_forma_pagto, 'Forma de Pagamento', false);
      return false;  
   }

   return true;

}

