/** * Método que gera a página inicial do estudo online */ public function estudoOnlineHome() { $sqlTurma = new SqlTurma(); $sqlLivro = new SqlLivro(); $sqlConteudos = new SqlConteudos(); $sqlDisciplina = new SqlDisciplina(); try { $aluno = $this->getUsuario(FALSE, new Aluno()); $turma = $sqlTurma->deALuno($aluno); $livrosDeTurma = $sqlLivro->deTurma($turma); $livros = array(); while ($livro = $livrosDeTurma->fetch()) { $livros[$livro->getId()]["livro"] = $livro; $disciplinas = $sqlDisciplina->deLivro($livro); while ($disciplina = $disciplinas->fetch()) { $conts = $sqlConteudos->deLivroComAcompanhamento($livro, $disciplina); $livros[$livro->getId()]["disciplinas"][$disciplina->getId()]["disciplina"] = $disciplina; $livros[$livro->getId()]["disciplinas"][$disciplina->getId()]["topicos"] = $conts->fetchAll(); } } //Verificando se existem livros associados a turma do aluno if (!count($livros)) { throw new Exception("Não foram encontrados livros associados a turma do aluno"); } //Passando os dados para o view $this->setData("notas", 10.0); $this->setData("aluno", $aluno); $this->setData("turma", $turma); $this->setData("arrayLivros", $livros); $this->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 Javascript::alert($exc->getMessage()); $this->close(true); } }