/** * Mapeada como: * /u/confirmar/:id * /u/desfazer-confirmar/:id * @return type */ public function presencaAction() { if (!$this->autenticacao(true)) { return; } $id = $this->_getParam('id', 0); $confirmar = $this->_getParam('confirmar', 'f'); $cache = Zend_Registry::get('cache_common'); $ps = $cache->load('prefsis'); $idEncontro = (int) $ps->encontro["id_encontro"]; $model = new Application_Model_Pessoa(); try { if ($confirmar == 't') { $data = 'now()'; $this->view->msg = $this->t->_("Participant confirmed."); } else { $data = 'null'; $this->view->msg = $this->t->_("Participant confirmation undone."); } $select = "UPDATE encontro_participante SET confirmado = ?,\n data_confirmacao = {$data} where id_pessoa = ? AND id_encontro = ?"; $model->getAdapter()->query($select, array($confirmar, $id, $idEncontro)); $this->view->ok = true; } catch (Exception $e) { $this->view->ok = false; $this->view->erro = "Ocorreu um erro inesperado ao marcar interesse em <b>evento</b>.<br/>Detalhes" . $e->getMessage(); } }
protected function mockLogin($username = '******', $password = '******') { $model = new Application_Model_Pessoa(); $resultadoConsulta = $model->avaliaLogin($username, $password); $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', 'staging'); $idEncontro = $config->encontro->codigo; $idPessoa = $resultadoConsulta['id_pessoa']; $administrador = $resultadoConsulta['administrador']; $apelido = $resultadoConsulta['apelido']; $twitter = $resultadoConsulta['twitter']; $auth = Zend_Auth::getInstance(); $storage = $auth->getStorage(); $storage->write(array("idPessoa" => $idPessoa, "administrador" => $administrador, "apelido" => $apelido, "idEncontro" => $idEncontro, "twitter" => $twitter, "email" => $username)); }
public function editarPermissaoAction() { $this->autenticacao(); $this->view->title = $this->t->_('Edit Permission'); $cache = Zend_Registry::get('cache_common'); $ps = $cache->load('prefsis'); $idEncontro = (int) $ps->encontro["id_encontro"]; $model = new Application_Model_Pessoa(); $form = new Admin_Form_Permissao(); $this->view->form = $form; if ($this->getRequest()->isPost()) { $formData = $this->getRequest()->getPost(); if ($form->isValid($formData)) { $cancelar = $this->getRequest()->getPost('cancelar'); if (isset($cancelar)) { return $this->_helper->redirector->goToRoute(array('module' => 'admin', 'controller' => 'config', 'action' => 'permissao-usuarios'), 'default', true); } $id = $this->getRequest()->getParam('id', 0); $admin = (bool) $form->getValue('admin') ? 't' : 'f'; $id_tipo_usuario = $form->getValue('id_tipo_usuario'); $adapter = $model->getAdapter(); try { $adapter->beginTransaction(); $model->update(array('administrador' => $admin), 'id_pessoa = ' . $id); $adapter->update("encontro_participante", array('id_tipo_usuario' => $id_tipo_usuario), "id_encontro = {$idEncontro} AND id_pessoa = {$id}"); $adapter->commit(); return $this->_helper->redirector->goToRoute(array('module' => 'admin', 'controller' => 'config', 'action' => 'permissao-usuarios'), 'default', true); } catch (Exception $e) { $this->_helper->flashMessenger->addMessage(array('danger' => 'Ocorreu um erro inesperado.<br/>Detalhes: ' . $e->getMessage())); $adapter->rollBack(); } } else { $form->populate($formData); } } else { $id = $this->_getParam('id', 0); if ($id > 0) { $rs = $model->buscarPermissaoUsuarios($idEncontro, $id, "id_pessoa"); $data = $rs[0]; $form->populate(array('admin' => $data['administrador'], 'id_tipo_usuario' => $data['id_tipo_usuario'])); $this->view->usuario = $data['nome']; } } }
public function verAction() { $menu = new Sige_Mobile_Menu($this->view, "participante"); $this->view->menu = $menu; $model = new Application_Model_Pessoa(); $id = $this->_getParam('id', ""); if (!empty($id)) { if (is_numeric($id)) { $sql = $model->getAdapter()->quoteInto('id_pessoa = ?', $id); } else { $sql = $model->getAdapter()->quoteInto('twitter = ?', $id); } } else { if (Zend_Auth::getInstance()->hasIdentity()) { $sessao = Zend_Auth::getInstance()->getIdentity(); if (!empty($sessao["twitter"])) { $sql = $model->getAdapter()->quoteInto('twitter = ?', $sessao["twitter"]); $id = $sessao["twitter"]; } else { $sql = $model->getAdapter()->quoteInto('id_pessoa = ?', $sessao["idPessoa"]); $id = $sessao["idPessoa"]; } } else { $this->_helper->flashMessenger->addMessage(array('danger' => 'Participante não encontrado.')); return; } } $this->view->id = $id; $this->view->user = $model->fetchRow($sql); }
/** * @deprecated use send * @param type $idpessoa * @param type $idEncrontro */ public function sendCorrecao($idpessoa, $idEncrontro) { $mail = new Zend_Mail(); $pessoa = new Application_Model_Pessoa(); $linha = $pessoa->find($idpessoa)->current(); // $pessoa->email = $linha->email; $senha = $pessoa->gerarSenha($linha->email); $emailText = $this->getMsgCorrecao($idEncrontro); $emailText->mensagem = str_replace('{nome}', $linha->nome, $emailText->mensagem); $emailText->mensagem = str_replace('{email}', $linha->email, $emailText->mensagem); $emailText->mensagem = str_replace('{senha}', $senha, $emailText->mensagem); $emailText->mensagem = str_replace('{href_link}', $emailText->link, $emailText->mensagem); $mail->setBodyHtml(iconv($this->config->email->in_charset, $this->config->email->out_charset, $emailText->mensagem)); $mail->addTo($linha->email, $linha->nome); $mail->setSubject(iconv($this->config->email->in_charset, $this->config->email->out_charset, $emailText->assunto)); $mail->send(); }
public function requisitarMudarEmailAction() { $this->_helper->layout->setLayout('twbs3/layout'); $form = new Application_Form_RequisitarMudarEmail(); if ($this->getRequest()->isPost() && $form->isValid($this->getRequest()->getPost())) { $data = $form->getValues(); unset($data['captcha']); unset($data['submit']); $pessoa = new Application_Model_Pessoa(); // 1. ver se e-mail existe. $from = $pessoa->select()->from('pessoa', array("id_pessoa")); $select = $from->where("email = ?", $data['email_anterior']); $resultado = $pessoa->fetchRow($select); if (!empty($resultado)) { // 2. ver se novo e-mail já existe. Se sim, não pode ser substituído $from2 = $pessoa->select()->from('pessoa', array("id_pessoa")); $select2 = $from2->where("email = ?", $data['novo_email']); $resultado2 = $pessoa->fetchRow($select2); if (empty($resultado2)) { try { $model = new Application_Model_MudarEmail(); $model->insert($data); $this->_helper->flashMessenger->addMessage(array('success' => _('Your request for change your e-mail was sent. Wait for an approval soon.'))); return $this->_helper->redirector->goToRoute(array(), 'login', true); } catch (Exception $e) { $this->_helper->flashMessenger->addMessage(array('danger' => $e->getMessage())); } } else { $this->_helper->flashMessenger->addMessage(array('warning' => _('The new E-mail address that you inform already exists!'))); } } else { $this->_helper->flashMessenger->addMessage(array('warning' => _('Your previous E-mail address was not found!'))); } } $this->view->form = $form; }
public function certificadosAction() { $this->autenticacao(); $sessao = Zend_Auth::getInstance()->getIdentity(); $id_pessoa = $sessao["idPessoa"]; $this->view->menu->setAtivo('certificados'); $model = new Application_Model_Participante(); $this->view->certsParticipanteEncontro = $model->listarCertificadosParticipanteEncontro($id_pessoa); $this->view->certsParticipanteEvento = $model->listarCertificadosParticipanteEvento($id_pessoa); // $this->view->certsPalestrante = array_merge($model->listarCertificadosPalestrante($id_pessoa), $model->listarCertificadosPalestrantesOutros($id_pessoa), $model->listarCertificadosPalestrantesArtigos($id_pessoa)); $this->view->certsPalestrante = array_merge($model->listarCertificadosPalestrante($id_pessoa), $model->listarCertificadosPalestrantesOutros($id_pessoa)); $this->view->id = $id_pessoa; $pessoa = new Application_Model_Pessoa(); $sql = $pessoa->getAdapter()->quoteInto('id_pessoa = ?', $id_pessoa); $this->view->user = $pessoa->fetchRow($sql); }
public function inscricoesListaPdfAction() { $this->autenticacao(); $id_encontro = (int) $this->getRequest()->getParam("id_encontro", 0); $status = $this->getRequest()->getParam("status"); if ($id_encontro < 1) { $this->_helper->flashMessenger->addMessage(array('error' => "Encontro inválido. Comece de novo. " . "Caso o erro persista, contate o administrador.")); return $this->_helper->redirector->goToRoute(array(), 'default', true); } $model_pessoa = new Application_Model_Pessoa(); switch ($status) { case "confirmadas": // inscrições confirmadas $rel = $model_pessoa->buscaParticipantes($id_encontro, "ep.confirmado='t'"); break; case "nao-confirmadas": // inscrições não confirmadas $rel = $model_pessoa->buscaParticipantes($id_encontro, "ep.confirmado='f'"); break; default: $status = "todas"; // todas as inscrições $rel = $model_pessoa->buscaParticipantes($id_encontro); break; } $model_encontro = new Application_Model_Encontro(); $encontro = $model_encontro->fetchRow("id_encontro = {$id_encontro}"); if (empty($encontro)) { $this->_helper->flashMessenger->addMessage(array('error' => "Encontro ({$encontro}) inexistente.")); return $this->_helper->redirector->goToRoute(array('module' => 'admin', 'controller' => 'relatorios', 'action' => 'index'), 'default', true); } if (empty($rel)) { $this->_helper->flashMessenger->addMessage(array("alert" => "O relatório não possui nenhum registro.")); return $this->_helper->redirector->goToRoute(array('module' => 'admin', 'controller' => 'relatorios', 'action' => 'index'), 'default', true); } $pdf = new Sige_Pdf_Relatorio_InscricaoEncontro($rel, array("apelido_encontro" => $encontro["apelido_encontro"], "status" => $status)); try { $pdf->gerarPdf(); } catch (Exception $e) { throw new Exception("Erro ao gerar PDF: " . $e->getMessage()); } }
public function deletarEventoAction() { $this->_helper->layout()->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); $id_evento = $this->_getParam('evento', 0); $model_pessoa = new Application_Model_Pessoa(); $model_evento = new Application_Model_Evento(); try { if ($id_evento < 1) { throw new Exception("Parâmetros inválidos. Tente novamente do início ou contate o administrador."); } $this->autenticacao(); $sessao = Zend_Auth::getInstance()->getIdentity(); $id_pessoa_sessao = $sessao["idPessoa"]; $id_pessoa_db = $model_evento->getResponsavel($id_evento); if ($id_pessoa_db != $id_pessoa_sessao && !$model_pessoa->isAdmin()) { throw new Exception("Você não é administrador para executar esta ação."); } $model_evento->deletarEvento($id_evento); $this->_helper->flashMessenger->addMessage(array('success' => 'Evento removido com sucesso.')); } catch (Zend_Db_Exception $ex) { if ($ex->getCode() == 23503) { $this->_helper->flashMessenger->addMessage(array('info' => _("This event could not be deleted."))); } else { $this->_helper->flashMessenger->addMessage(array('danger' => _('An unexpected error ocurred.<br/> Details: ') . $ex->getMessage())); } } $this->_helper->redirector->goToRoute(array('controller' => 'evento', 'action' => 'index'), 'default', true); }