protected function _data() { $model = new Application_Model_Encontro(); $sessao = Zend_Auth::getInstance()->getIdentity(); $where = $model->getAdapter()->quoteInto('id_encontro = ?', $sessao["idEncontro"]); $row = $model->fetchRow($where); $element = $this->createElement('radio', 'data', array('label' => 'Data: ')); $data_ini = new Zend_Date($row->data_inicio); $data_fim = new Zend_Date($row->data_fim); while ($data_ini <= $data_fim) { $element->addMultiOption($data_ini->toString('dd/MM/YYYY'), $data_ini->toString('dd/MM/YYYY')); $data_ini->add(1, Zend_Date::DAY); } $element->setRequired(true)->addErrorMessage("Escolha uma data para realização do evento"); $element->setDecorators(array('ViewHelper', 'Description', 'Errors', array('HtmlTag', ''), array('Label', ''))); return $element; }
public function participanteEvento($array = array('nome' => '', 'id_encontro' => 0, 'encontro' => '', 'tipo_evento' => '', 'nome_evento' => '', 'carga_horaria' => '')) { $model_encontro = new Application_Model_Encontro(); $encontro_obj = $model_encontro->buscaComMunicipio($array["id_encontro"]); $array["carga_horaria"] = floor($array["carga_horaria"]) . " hora(s)"; $paragrafo = " "; $texto = $paragrafo; $patterns = array('/{nome}/', '/{encontro}/', '/{tipo_evento}/', '/{nome_evento}/', '/{carga_horaria}/'); $replacements = array($this->fullUpper($array['nome']), $array['encontro'], $array['tipo_evento'], $array['nome_evento'], $array['carga_horaria']); $texto .= preg_replace($patterns, $replacements, $encontro_obj["certificados_template_participante_evento"]); $linhas = explode("\n", wordwrap($texto, Sige_Pdf_Certificado::NUM_MAX_CARACTERES, "\n")); $linhas[] = ""; // saltar linha $date = new Zend_Date(); $linhas[] = $this->str_pad_left(sprintf($encontro_obj["nome_municipio"] . ", %s", $date->toString("dd 'de' MMMM 'de' y")), Sige_Pdf_Certificado::NUM_MAX_CARACTERES); // Get PDF document as a string return $this->gerarCertificado($array['id_encontro'], $linhas); }
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 downloadLoteArtigosAction() { $this->autenticacao(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(); $ano = (int) $this->getRequest()->getParam("ano", 0); $encontro = (int) $this->getRequest()->getParam("encontro", 0); $status = $this->getRequest()->getParam("status", "todos"); $model_encontro = new Application_Model_Encontro(); if ($ano < 1980 && $encontro > 0) { // busca por encontro $encontros = array($model_encontro->buscaEncontro($encontro)); } elseif ($ano > 1980 && $encontro < 1) { // busca por ano $encontros = $model_encontro->buscaEncontrosPorAno($ano); } else { // erro $this->_helper->flashMessenger->addMessage(array('error' => "Parâmetro(s) inválido(s). Utilize <b>ano</b> ou <b>encontro</b>.")); return $this->_helper->redirector->goToRoute(array(), 'default', true); } if (empty($encontros)) { $this->_helper->flashMessenger->addMessage(array('warning' => "Nenhum encontro cadastrado.")); return $this->_helper->redirector->goToRoute(array('module' => 'admin', 'controller' => 'relatorios', 'action' => 'index'), 'default', true); } // Compativel com PHP < 5.5 $id_encontros_array = array(); foreach ($encontros as $encontro) { array_push($id_encontros_array, $encontro["id_encontro"]); } // PHP >= 5.5 // $id_encontros_array = array_column($encontros, "id_encontro"); $model_artigo = new Application_Model_Artigo(); $rel = $model_artigo->buscaArtigos($id_encontros_array, $status); if (empty($rel)) { $this->_helper->flashMessenger->addMessage(array("alert" => "Não há registros a serem mostrados.")); return $this->_helper->redirector->goToRoute(array('module' => 'admin', 'controller' => 'relatorios', 'action' => 'index'), 'default', true); } $this->_exportLoteZip($rel); }
public function programacaoAction() { $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', 'staging'); $idEncontro = $config->encontro->codigo; $model = new Application_Model_Evento(); $rs = $model->programacao($idEncontro); $export_type = $this->getRequest()->getParam('exportar', null); if ($export_type == 'pdf') { return $this->exportarProgramacao($rs); } $this->view->menu->setAtivo('schedule'); $this->view->lista = $rs; $model_encontro = new Application_Model_Encontro(); $where = $model_encontro->getAdapter()->quoteInto('id_encontro = ?', $idEncontro); $row = $model_encontro->fetchRow($where); $data_ini = new Zend_Date($row->data_inicio); $data_fim = new Zend_Date($row->data_fim); $datas_encontro = array(); while ($data_ini <= $data_fim) { $datas_encontro[] = clone $data_ini; $data_ini->add(1, Zend_Date::DAY); } $this->view->datas_encontro = $datas_encontro; }