Esempio n. 1
0
 /**
  * Método que gera a página de visulaização dos anexos
  * @param int $anexoId O código do anexo a ser exibido
  */
 public function anexos($anexoId)
 {
     $_SESSION['bd'] = 2;
     //Tratamento especial para requisições do tipo POST
     if ($this->getRequest()->isPost()) {
         header('Content-Type: application/json; charset=UTF-8');
         //Redireciona para os métodos de inseção
         switch ($this->input->post("acao")) {
             case "avaliar":
                 $this->avaliar($anexoId);
                 break;
             default:
                 $this->comentar($anexoId);
                 break;
         }
     }
     //Definindo a página
     try {
         $sqlAnexo = new Kernel\Sql\SqlAnexos();
         // $sqlComentarios = new SqlAnexosComentarios();
         $sqlAvaliação = new SqlAnexosAvaliacoes();
         $sqlDisciplina = new SqlDisciplina();
         // $aluno = $this->getUsuario(FALSE, new Aluno());
         $anexo = $sqlAnexo->get((int) $anexoId);
         $dsiciplina = $sqlDisciplina->deAnexo($anexo);
         //
         $outrosAnexos = array();
         //Carregando plugins especificos para tipos e subtipos e definindo os dados especificos
         if ($anexo->getTipo() == Anexos::TIPO_GALERIA) {
             $arquivo = new Arquivos();
             $this->loadPlugin("bootstrap-image-gallery");
             $this->bowerLoad("blueimp-bootstrap-image-gallery");
             $this->setData("imagens", $arquivo->arquivosDePasta($anexo->getNome(), false));
         }
         //Carregando os plugins básicos
         $this->bowerLoad("autosize");
         //Passando os dados para o view
         $this->setData("anexo", $anexo);
         $this->setData("disciplina", $dsiciplina);
         $this->setData("dadosAnexo", $anexo->dadosAnexo());
         $this->setData("outrosAnexos", $outrosAnexos);
         // $this->setData("comentarios", $sqlComentarios->comentariosDeAnexo($anexo));
         // $this->setData("avaliacao", $sqlAvaliação->get($anexo, $aluno));
         $this->printView();
     } catch (SqlException $sql) {
         echo Javascript::alert("Ocorreu um erro interno. Tente novamente mais tarde");
         $this->close();
     } catch (\GGE\Lib\Base\Exception $exp) {
         echo Javascript::alert($exp->getMessage());
         $this->close();
     }
 }