/** * Método que lista os anexos do tópico informado de acordo com o usuário logado * @param \Kernel\Modelo\Livro\Topico $topico O tópico alvo da consulta * @param \FiltrosSistema $filtros Filtros do sistema de filtros * @return \GGE\Lib\Sql\ResultSetHydrator Um objeto contendo os dados obtidos na consulta */ public function listarPorTopico(\Kernel\Modelo\Livro\Topico $topico, $filtros = null) { $sqlAnexos = new \Kernel\Sql\SqlAnexos(); switch ($this->usuarioLogado->getPerfil()->getId()) { case \Kernel\Modelo\Perfil::PROFESSOR: return $sqlAnexos->deTopicoProfessor($topico, $this->usuarioLogado); default: return $sqlAnexos->deTopico($topico); } }
/** * Método que gera a página de exibição do tópico acessado na home do estudo online. * Só é exibido o tópico já dado em sala de aula * @param int $topicoId O código do tópico */ public function estudoOnlineTopico($topicoId) { $sqlTurma = new SqlTurma(); $sqlLivro = new SqlLivro(); $sqlAnexo = new Kernel\Sql\SqlAnexos(); try { $aluno = $this->getUsuario(FALSE, new Aluno()); $turma = $sqlTurma->deALuno($aluno); $topico = $sqlLivro->getTopico((int) $topicoId); $anexos = $sqlAnexo->deTopico($topico); //Passando os dados para o view $this->loadPlugin("shadowbox")->loadPlugin("turn.js")->setData("aluno", $aluno)->setData("turma", $turma)->setData("topico", $topico)->setData("anexos", $anexos)->setData("teste", new stdClass())->printView(); } catch (SqlException $sql) { echo Javascript::alert("Ocorreu um erro interno. Tente novamente mais tarde."); $this->close(true); } catch (\GGE\Lib\Base\Exception $exc) { echo $exc->getMessage(); $this->close(true); } }