コード例 #1
0
 /**
  * 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);
     }
 }