/**
  * Método excluiendereco()
  * Exclui o endereço do agente
  * @access public
  * @param void
  * @return void
  */
 public function excluienderecoAction()
 {
     $this->autenticacao();
     $idAgente = $this->_request->getParam("id");
     $idEndereco = $this->_request->getParam("idEndereco");
     $qtdEndereco = $this->_request->getParam("qtdEndereco");
     $enderecoCorrespondencia = $this->_request->getParam("enderecoCorrespondencia");
     if ($qtdEndereco <= 1) {
         parent::message("Você tem que ter pelo menos um endereço cadastrado!", "agentes/enderecos/id/" . $idAgente, "ALERT");
     }
     try {
         $excluir = EnderecoNacionalDAO::deletarEnderecoNacional($idEndereco);
         if ($enderecoCorrespondencia == "1") {
             $novaCorrespondencia = EnderecoNacionalDAO::novaCorrespondencia($idAgente);
         }
         parent::message("Exclusão realizada com sucesso!", "agentes/enderecos/id/" . $idAgente, "CONFIRM");
     } catch (Exception $e) {
         parent::message("Erro ao excluir o enderço: " . $e->getMessage(), "agentes/enderecos/id/" . $idAgente, "ERROR");
     }
 }
 /**
  * Método para gravação de todos os dados do agente
  * @access public
  * @param void
  * @return void
  */
 public function gravaragentecompletoAction()
 {
     if ($this->getRequest()->isPost()) {
         $post = Zend_Registry::get('post');
         $idAgente = $post->idAgente;
         $cpf = Mascara::delMaskCPF(Mascara::delMaskCNPJ($post->cpf));
         // retira as máscaras
         $TipoNome = strlen($cpf) == 11 ? 18 : 19;
         // 18 = pessoa física e 19 = pessoa jurídica
         $Usuario = $this->getIdUsuario;
         // id do usuário logado
         // ================================================ INÍCIO SALVAR NOME ======================================================
         $nome = $post->nome;
         try {
             // busca o nome do agente
             $busca = NomesDAO::buscarNome($idAgente);
             if (!$busca) {
                 $i = NomesDAO::gravarNome($idAgente, $TipoNome, $nome, 0, $Usuario);
             } else {
                 $i = NomesDAO::atualizaNome($idAgente, $TipoNome, $nome, 0, $Usuario);
             }
         } catch (Exception $e) {
             parent::message("Erro ao salvar o nome: " . $e->getMessage(), "manteragentes/agentes?acao=cc", "ERROR");
         }
         // ================================================ FIM SALVAR NOME ======================================================
         // ================================================ INICIO SALVAR VISÂO ======================================================
         $Visao = $post->visao;
         $grupologado = $post->grupologado;
         /* 
          * Validação - Se for componente da comissão ele não salva a visão
          * Regra o componente da comissão não pode alterar sua visão.
          */
         if ($grupologado != 118) {
             $GravarVisao = array('idAgente' => $idAgente, 'Visao' => $Visao, 'Usuario' => $Usuario, 'stAtivo' => 'A');
             try {
                 $busca = VisaoDAO::buscarVisao($idAgente, $Visao);
                 if (!$busca) {
                     $i = VisaoDAO::cadastrarVisao($GravarVisao);
                 }
             } catch (Exception $e) {
                 parent::message("Erro ao salvar a visão: " . $e->getMessage(), "manteragentes/agentes?acao=cc", "ERROR");
             }
             // ================================================ FIM SALVAR VISÂO ======================================================
             // ===================== INÍCIO SALVAR TITULAÇÃO (ÁREA/SEGMENTO DO COMPONENTE DA COMISSÃO) ================================
             $titular = $post->titular;
             $areaCultural = $post->areaCultural;
             $segmentoCultural = $post->segmentoCultural;
             // só salva área e segmento para a visão de Componente da Comissão e se os campos titular e areaCultural forem informados
             if ((int) $Visao == 210 && ((int) $titular == 0 || (int) $titular == 1) && !empty($areaCultural)) {
                 $GravarComponente = array('idAgente' => $idAgente, 'cdArea' => $areaCultural, 'cdSegmento' => $segmentoCultural, 'stTitular' => $titular, 'stConselheiro' => 'A');
                 $AtualizarComponente = array('cdArea' => $areaCultural, 'cdSegmento' => $segmentoCultural, 'stTitular' => $titular);
                 try {
                     // busca a titulação do agente (titular/suplente de área cultural)
                     $busca = TitulacaoConselheiroDAO::buscarComponente($idAgente, $Visao);
                     if (!$busca) {
                         $i = TitulacaoConselheiroDAO::gravarComponente($GravarComponente);
                     } else {
                         $i = TitulacaoConselheiroDAO::atualizaComponente($idAgente, $AtualizarComponente);
                     }
                 } catch (Exception $e) {
                     parent::message("Erro ao salvar a Área e Segmento: " . $e->getMessage(), "manteragentes/agentes?acao=cc", "ERROR");
                 }
             }
             // ============================= FIM SALVAR TITULAÇÃO (ÁREA/SEGMENTO DO COMPONENTE DA COMISSÃO) ===========================
         }
         // Fecha o if da regra do componente da comissão
         // =========================================== INICIO SALVAR ENDEREÇOS ====================================================
         $cepEnderecos = $post->ceps;
         $tipoEnderecos = $post->tipoEnderecos;
         $ufEnderecos = $post->ufs;
         $CidadeEnderecos = $post->cidades;
         $Enderecos = $post->logradouros;
         $divulgarEnderecos = $post->divulgarEnderecos;
         if (!empty($post->correspondenciaEnderecos)) {
             $correspondenciaEnderecos = $post->correspondenciaEnderecos;
         } else {
             $correspondenciaEnderecos = -1;
         }
         $tipoLogradouros = $post->tipoLogradouros;
         $numeros = $post->numeros;
         $complementos = $post->complementos;
         $bairros = $post->bairros;
         try {
             // exclui todos os telefones do agente
             $delete = EnderecoNacionalDAO::deletarEnderecoNacional($idAgente);
             // cadastra todos os telefones
             for ($i = 0; $i < sizeof($cepEnderecos); $i++) {
                 if ($correspondenciaEnderecos == "end" + $i) {
                     $correspondenciaEnderecos = 1;
                 } else {
                     $correspondenciaEnderecos = 0;
                 }
                 $arrayEnderecos = array('idAgente' => $idAgente, 'Cep' => str_replace(".", "", str_replace("-", "", $cepEnderecos[$i])), 'TipoEndereco' => $tipoEnderecos[$i], 'UF' => $ufEnderecos[$i], 'Cidade' => $CidadeEnderecos[$i], 'Logradouro' => $Enderecos[$i], 'Divulgar' => $divulgarEnderecos[$i], 'TipoLogradouro' => $tipoLogradouros[$i], 'Numero' => $numeros[$i], 'Complemento' => $complementos[$i], 'Bairro' => $bairros[$i], 'Status' => $correspondenciaEnderecos, 'Usuario' => $Usuario);
                 $insere = EnderecoNacionalDAO::gravarEnderecoNacional($arrayEnderecos);
             }
         } catch (Exception $e) {
             parent::message("Erro ao salvar o endereço: " . $e->getMessage(), "manteragentes/agentes?acao=cc", "ERROR");
         }
         // ============================================= FIM SALVAR ENDEREÇOS ====================================================
         // =========================================== INICIO SALVAR TELEFONES ====================================================
         $tipoFones = $post->tipoFones;
         $ufFones = $post->ufFones;
         $dddFones = $post->dddFones;
         $Fones = $post->Fones;
         $divulgarFones = $post->divulgarFones;
         try {
             // exclui todos os telefones do agente
             $delete = Telefone::excluirTodos($idAgente);
             // cadastra todos os telefones
             for ($i = 0; $i < sizeof($Fones); $i++) {
                 $arrayTelefones = array('idAgente' => $idAgente, 'TipoTelefone' => $tipoFones[$i], 'UF' => $ufFones[$i], 'DDD' => $dddFones[$i], 'Numero' => $Fones[$i], 'Divulgar' => $divulgarFones[$i], 'Usuario' => $Usuario);
                 $insere = Telefone::cadastrar($arrayTelefones);
             }
         } catch (Exception $e) {
             parent::message("Erro ao salvar o componente: " . $e->getMessage(), "manteragentes/agentes?acao=cc", "ERROR");
         }
         // =========================================== FIM SALVAR TELEFONES ====================================================
         // =========================================== INICIO SALVAR EMAILS ====================================================
         $tipoEmails = $post->tipoEmails;
         $Emails = $post->Emails;
         $divulgarEmails = $post->divulgarEmails;
         $enviarEmails = $post->enviarEmails;
         try {
             // exclui todos os e-mails do agente
             $delete = Email::excluirTodos($idAgente);
             // cadastra todos os e-mails
             for ($i = 0; $i < sizeof($Emails); $i++) {
                 $arrayEmail = array('idAgente' => $idAgente, 'TipoInternet' => $tipoEmails[$i], 'Descricao' => $Emails[$i], 'Status' => $enviarEmails[$i], 'Divulgar' => $divulgarEmails[$i], 'Usuario' => $Usuario);
                 $insere = Email::cadastrar($arrayEmail);
             }
         } catch (Exception $e) {
             parent::message("Erro ao salvar o componente: " . $e->getMessage(), "manteragentes/agentes?acao=cc", "ERROR");
         }
         // =========================================== FIM SALVAR EMAILS ====================================================
     }
     parent::message("Cadastro realizado com sucesso!", "manteragentes/agentes?acao=cc", "CONFIRM");
 }