private function _registrarAprovacaoEmAvaliacao(WeLearn_Cursos_ParticipacaoCurso &$participacaoCurso, WeLearn_Cursos_Avaliacoes_Avaliacao $avaliacao)
 {
     $participacaoCurso->setAvaliacaoAtual(null);
     $participacaoCurso->setTipoConteudoAtual(WeLearn_Cursos_Conteudo_TipoConteudo::PAGINA);
     $proximoModulo = $this->_moduloDao->recuperarProximo($participacaoCurso->getCurso(), $avaliacao->getModulo()->getNroOrdem());
     if ($proximoModulo) {
         $this->_participacaoCursoDao->getControleModuloDAO()->acessar($participacaoCurso, $proximoModulo);
         $proximaAula = $this->_aulaDao->recuperarProxima($proximoModulo);
         if ($proximaAula) {
             $this->_participacaoCursoDao->getControleAulaDAO()->acessar($participacaoCurso, $proximaAula);
             $proximaPagina = $this->_paginaDao->recuperarProxima($proximaAula);
             if ($proximaPagina) {
                 $this->_participacaoCursoDao->getControlePaginaDAO()->acessar($participacaoCurso, $proximaPagina);
             }
         }
     } else {
         $participacaoCurso->setModuloAtual(null);
         $participacaoCurso->setAulaAtual(null);
         $participacaoCurso->setPaginaAtual(null);
         $participacaoCurso->setAvaliacaoAtual(null);
         $participacaoCurso->setTipoConteudoAtual(WeLearn_Cursos_Conteudo_TipoConteudo::NENHUM);
         if ($participacaoCurso->getSituacao() != WeLearn_Cursos_SituacaoParticipacaoCurso::CURSO_CONCLUIDO) {
             $this->_participacaoCursoDao->finalizarCurso($participacaoCurso);
         }
     }
 }
Example #2
0
 private function _criarFromCassandra(array $column, WeLearn_Cursos_Conteudo_Pagina $paginaPadrao = null, WeLearn_Usuarios_Usuario $usuarioPadrao = null)
 {
     $column['pagina'] = $paginaPadrao instanceof WeLearn_Cursos_Conteudo_Pagina ? $paginaPadrao : $this->_paginaDao->recuperar($column['pagina']);
     $column['criador'] = $usuarioPadrao instanceof WeLearn_Usuarios_Usuario ? $usuarioPadrao : $this->_usuarioDao->recuperar($column['criador']);
     $comentario = $this->criarNovo();
     $comentario->fromCassandra($column);
     return $comentario;
 }
Example #3
0
 /**
  * @param array $column
  * @param WeLearn_Cursos_ParticipacaoCurso $participacaoCurso
  * @param null|WeLearn_Cursos_Conteudo_Pagina $pagina
  * @return WeLearn_Cursos_Conteudo_ControlePagina
  */
 private function _criarFromCassandra(array $column, WeLearn_Cursos_ParticipacaoCurso $participacaoCurso, WeLearn_Cursos_Conteudo_Pagina $pagina = null)
 {
     $paginaUUID = key($column);
     $column['pagina'] = $pagina instanceof WeLearn_Cursos_Conteudo_Pagina ? $pagina : $this->_paginaDao->recuperar($paginaUUID);
     $column['participacaoCurso'] = $participacaoCurso;
     $column['status'] = $column[$paginaUUID];
     $controlePagina = $this->criarNovo();
     $controlePagina->fromCassandra($column);
     return $controlePagina;
 }
Example #4
0
 private function _retornarJSONProximaAula(WeLearn_Cursos_ParticipacaoCurso &$participacaoCurso, $proximaAula)
 {
     if ($proximaAula) {
         $proximaPagina = $this->_paginaDao->recuperarProxima($proximaAula);
         if ($proximaPagina) {
             $this->_participacaoCursoDao->getControleAulaDAO()->acessar($participacaoCurso, $proximaAula);
         }
         return $this->_retornarJSONProximaPagina($participacaoCurso, $proximaPagina);
     }
     $error = create_json_feedback_error_json('O módulo seguinte não possui aulas para serem aplicadas.
         O curso não pode proseguir, contate um gerenciador!');
     return create_json_feedback(false, $error);
 }
 /**
  * @param array $column
  * @param WeLearn_Usuarios_Aluno $aluno
  * @param WeLearn_Cursos_Curso $curso
  * @return WeLearn_DTO_IDTO
  */
 private function _criarFromCassadra(array $column, WeLearn_Usuarios_Aluno $aluno, WeLearn_Cursos_Curso $curso)
 {
     if ($column['moduloAtual']) {
         //Tenta recuperar modulo atual se houver;
         try {
             $column['moduloAtual'] = $this->_moduloDao->recuperarPorOrdem($curso, $column['moduloAtual']);
         } catch (cassandra_NotFoundException $e) {
             //caso contrário unseta essa chave do array para nao causar problemas na criação do objeto.
             unset($column['moduloAtual']);
         }
     } else {
         //caso contrário unseta essa chave do array para nao causar problemas na criação do objeto.
         unset($column['moduloAtual']);
     }
     if ($column['aulaAtual'] && isset($column['moduloAtual'])) {
         //Tenta recuperar aula atual se houver, e se modulo foi encontrado;
         try {
             $column['aulaAtual'] = $this->_aulaDao->recuperarPorOrdem($column['moduloAtual'], $column['aulaAtual']);
         } catch (cassandra_NotFoundException $e) {
             //caso contrário unseta essa chave do array para nao causar problemas na criação do objeto.
             unset($column['aulaAtual']);
         }
     } else {
         //caso contrário unseta essa chave do array para nao causar problemas na criação do objeto.
         unset($column['aulaAtual']);
     }
     if ($column['paginaAtual'] && isset($column['aulaAtual'])) {
         //Tenta recuperar pagina atual se houver, e se a aula foi encontrada;
         try {
             $column['paginaAtual'] = $this->_paginaDao->recuperarPorOrdem($column['aulaAtual'], $column['paginaAtual']);
         } catch (cassandra_NotFoundException $e) {
             //caso contrário unseta essa chave do array para nao causar problemas na criação do objeto.
             unset($column['paginaAtual']);
         }
     } else {
         //caso contrário unseta essa chave do array para nao causar problemas na criação do objeto.
         unset($column['paginaAtual']);
     }
     if ($column['avaliacaoAtual']) {
         try {
             $column['avaliacaoAtual'] = $this->_avaliacaoDao->recuperar($column['avaliacaoAtual']);
         } catch (cassandra_NotFoundException $e) {
             unset($column['avaliacaoAtual']);
         }
     } else {
         unset($column['avaliacaoAtual']);
     }
     if ($column['certificado']) {
         try {
             $column['certificado'] = $this->_certificadoDao->recuperar($column['certificado']);
         } catch (cassandra_NotFoundException $e) {
             unset($column['certificado']);
         }
     } else {
         unset($column['certificado']);
     }
     $column['aluno'] = $aluno;
     $column['curso'] = $curso;
     $participacaoCurso = $this->criarNovo();
     $participacaoCurso->fromCassandra($column);
     return $participacaoCurso;
 }