private function _criarFromCassandra(array $column, WeLearn_DTO_AbstractDTO $cursoOuAulaPadrao = null, WeLearn_Usuarios_Usuario $criadorPadrao = null) { if ($column['tipo'] == WeLearn_Cursos_Recursos_TipoRecurso::RESTRITO) { $recurso = $this->criarNovoRestrito(); if ($cursoOuAulaPadrao instanceof WeLearn_Cursos_Conteudo_Aula) { $column['aula'] = $cursoOuAulaPadrao; } else { $column['aula'] = $this->_aulaDao->recuperar($column['aula']); } } else { $recurso = $this->criarNovoGeral(); if ($cursoOuAulaPadrao instanceof WeLearn_Cursos_Curso) { $column['curso'] = $cursoOuAulaPadrao; } else { $column['curso'] = $this->_cursoDao->recuperar($column['curso']); } } if ($criadorPadrao instanceof WeLearn_Usuarios_Usuario) { $column['criador'] = $criadorPadrao; } else { $column['criador'] = $this->_usuarioDao->recuperar($column['criador']); } $recurso->fromCassandra($column); return $recurso; }
private function _criarFromCassandra(array $column, WeLearn_Cursos_Conteudo_Aula $aulaPadrao = null) { $column['aula'] = $aulaPadrao instanceof WeLearn_Cursos_Conteudo_Aula ? $aulaPadrao : $this->_aulaDAO->recuperar($column['aula']); $pagina = $this->criarNovo(); $pagina->fromCassandra($column); return $pagina; }
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); } } }
/** * @param array $column * @param WeLearn_Cursos_ParticipacaoCurso $participacaoCurso * @param null|WeLearn_Cursos_Conteudo_Aula $aula * @return WeLearn_Cursos_Conteudo_ControleAula */ private function _criarFromCassandra(array $column, WeLearn_Cursos_ParticipacaoCurso $participacaoCurso, WeLearn_Cursos_Conteudo_Aula $aula = null) { $aulaUUID = key($column); $column['aula'] = $aula instanceof WeLearn_Cursos_Conteudo_Aula ? $aula : $this->_aulaDao->recuperar($aulaUUID); $column['participacaoCurso'] = $participacaoCurso; $column['status'] = $column[$aulaUUID]; $controleAula = $this->criarNovo(); $controleAula->fromCassandra($column); return $controleAula; }
private function _retornarJSONProximoModulo(WeLearn_Cursos_ParticipacaoCurso &$participacaoCurso, WeLearn_Cursos_Conteudo_Modulo $moduloAnterior) { $proximoModulo = $this->_moduloDao->recuperarProximo($moduloAnterior->getCurso(), $moduloAnterior->getNroOrdem()); if ($proximoModulo) { $this->_participacaoCursoDao->getControleModuloDAO()->acessar($participacaoCurso, $proximoModulo); $proximaAula = $this->_aulaDao->recuperarProxima($proximoModulo); return $this->_retornarJSONProximaAula($participacaoCurso, $proximaAula); } else { return $this->_retornarJSONCursoFinalizado($participacaoCurso); } }
/** * @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; }