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); } } }
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; }
/** * @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; }
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; }