/**
  * @param WeLearn_Usuarios_Aluno $aluno
  * @param WeLearn_Cursos_Curso $curso
  * @return WeLearn_DTO_IDTO
  */
 public function removerPorCurso(WeLearn_Usuarios_Aluno $aluno, WeLearn_Cursos_Curso $curso)
 {
     $participacao = $this->recuperarPorCurso($aluno, $curso);
     $CFKey = WeLearn_Cursos_ParticipacaoCurso::gerarCFKey($aluno, $curso);
     $this->_cf->remove($CFKey);
     return $participacao;
 }
示例#2
0
 /**
  * @param WeLearn_Cursos_ParticipacaoCurso $participacaoCurso
  * @return int
  */
 public function recuperarQtdTotal(WeLearn_Cursos_ParticipacaoCurso $participacaoCurso)
 {
     return $this->_cf->get_count($participacaoCurso->getCFKey());
 }
 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);
         }
     }
 }
示例#4
0
 /**
  * @param WeLearn_Cursos_ParticipacaoCurso $participacaoCurso
  */
 public function registrarFimDeCurso(WeLearn_Cursos_ParticipacaoCurso &$participacaoCurso)
 {
     $certificado = $this->recuperarAtivoPorCurso($participacaoCurso->getCurso());
     $participacaoCurso->setCertificado($certificado);
     $this->_certificadosPorAlunoCF->insert($participacaoCurso->getAluno()->getId(), array(UUID::import($certificado->getId())->bytes => ''));
 }
 private function _recuperarRestantes(array $ids, WeLearn_Cursos_ParticipacaoCurso $participacaoCurso)
 {
     $columns = array();
     foreach ($ids as $nroOrdem => $id) {
         try {
             $column = $this->_cf->get($id);
             $columns[] = $column;
         } catch (cassandra_NotFoundException $e) {
             $this->_controleAvaliacaoPorParticipacaoCF->remove($participacaoCurso->getId(), array($nroOrdem));
         }
     }
     return $columns;
 }
示例#6
0
 private function _retornarJSONCursoFinalizado(WeLearn_Cursos_ParticipacaoCurso &$participacaoCurso)
 {
     $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);
     }
     $response = Zend_Json::encode(array('cursoFinalizado' => true, 'htmlCertificado' => $this->template->loadPartial('exibicao_aluno', array('certificado' => $participacaoCurso->getCertificado()), 'curso/certificado')));
     return create_json_feedback(true, '', $response);
 }
示例#7
0
 /**
  * @param WeLearn_Usuarios_Aluno $aluno
  * @param WeLearn_Cursos_Curso $curso
  * @return string
  */
 public static function gerarCFKey(WeLearn_Cursos_ParticipacaoCurso $participacaoCurso, WeLearn_Cursos_Avaliacoes_Avaliacao $avaliacao)
 {
     return $participacaoCurso->getId() . '::' . $avaliacao->getId();
 }