Comments (7)
Coloquei toda a regra de negócio dentro do gerenciamento das turmas.
Obs: Para testar turmas que emitam certificados sem progresso mínimo, é necessário ativar a opção, em seguida logar com o usuário em que se deseja emitir o certificado e avançar no progresso do curso. Isso acontece porque o certificado é criado no momento em que é registrado o progresso de um usuário. Em produção, será preciso criar esses certificados via command line para os usuários já cadastrados.
from timtec.
Fiz os testes e evidenciei o seguinte:
- O link não está sendo redirecionado para o Certificado e sim para o Atestado de horas.
Esse é o certificado (ver abas): http://timtec.conexaobrasil.org/admin/course/1/certificatesettings/
- Com o usuário superadmin, não rolou de permitir o certificado, quero dizer, só puder liberar um certificado quando o usuário era da categoria estudante. Eu deveria conseguir emitir o certificado para quaisquer usuários na turma sob as mesma condições. Aqui, no exemplo, tenho dois users na turma, sendo que o primeiro é admin e o segundo é estudante. O primeiro não consigo liberar certificados para ele, só o segundo, e ambos estão matriculados no curso.
- Layout quebrado no mobile:
from timtec.
Com o usuário superadmin, não rolou de permitir o certificado, quero dizer, só puder liberar um certificado quando o usuário era da categoria estudante. Eu deveria conseguir emitir o certificado para quaisquer usuários na turma sob as mesma condições. Aqui, no exemplo, tenho dois users na turma, sendo que o primeiro é admin e o segundo é estudante. O primeiro não consigo liberar certificados para ele, só o segundo, e ambos estão matriculados no curso.
Não existe esta relação com o role. O que acontece aqui é que o gatilho para a criação do certificado é executado no momento em que um estudante avança seu progresso no curso. Esse momento se dá na finalização de um vídeo, ou, no momento de envio de uma resposta de atividade. Os checkboxes desabilitados se dão pois não existe certificado criado para este usuário. Na prática, indica que o usuário não avançou em nada no curso. Esta regra vale para usuários novos. Para os usuários antigos da plataforma, o certificado ainda não havia sido criado pois não havia sido atingido o progresso mínimo. Esta regra agora mudou: os certificados são criados no primeiro momento do avanço do curso, e eles são exibidos ou não conforme as regras setadas na turma.
Eu loguei com o usuário felipecabrallafabbrica (troquei a senha para "felipecabrallafabbrica"), avancei no curso, e agora a opção está liberada, conforme print abaixo:
O link não está sendo redirecionado para o Certificado e sim para o Atestado de horas.
Isto depende de a opção de certificado estar marcada ou não. No caso, a opção não está marcada, o botão de certificado está cinza. O resultado é este:
Agora, quando marcamos a opção certificado e salvamos:
Clicamos no botão verde (que indica que trata-se de um certificado, e não de um atestado de horas) e temos o seguinte resultado:
Layout quebrado no mobile
Não cheguei a mexer em nada na opção de criação de certificado. Você acha que existe mesmo a necessidade de investirmos tempo e esforços para adaptar este recurso para mobile? Estamos falando de um recurso exclusivo dos administradores da plataforma e eu não vejo uma situação em que eles queiram editar o layout do certificado de um curso através de um mobile. O que você acha?
from timtec.
Não existe esta relação com o role. O que acontece aqui é que o gatilho para a criação do certificado é executado no momento em que um estudante avança seu progresso no curso. Esse momento se dá na finalização de um vídeo, ou, no momento de envio de uma resposta de atividade. Os checkboxes desabilitados se dão pois não existe certificado criado para este usuário. Na prática, indica que o usuário não avançou em nada no curso. Esta regra vale para usuários novos. Para os usuários antigos da plataforma, o certificado ainda não havia sido criado pois não havia sido atingido o progresso mínimo. Esta regra agora mudou: os certificados são criados no primeiro momento do avanço do curso, e eles são exibidos ou não conforme as regras setadas na turma.
Fiz o teste com outro usuário e o problema parecia persistir. Avancei mais no curso e depois foi liberado o certificado corretamente. Eu havia colocado um curso com 1% de carga horária mínima e mesmo assim o problema persistiu. Só foi liberado depois de 50% de realização e depois de alguns f5. Não rolou um realtime, teve um delay. Talvez seja cache... de qualquer modo parece estar funcionando!
Evidenciei um problema: o botão de baixar o certificado está com problemas. Não está gerando o pdf.
Não cheguei a mexer em nada na opção de criação de certificado. Você acha que existe mesmo a necessidade de investirmos tempo e esforços para adaptar este recurso para mobile? Estamos falando de um recurso exclusivo dos administradores da plataforma e eu não vejo uma situação em que eles queiram editar o layout do certificado de um curso através de um mobile. O que você acha?
Acho que não é uma prioridade agora, mas no futuro é importante que exista essa compatibilidade com layout mobile sim. Vou abrir uma nova issue e jogar isso para o backlog, deixando isso bem para o final. =)
from timtec.
- Quando for atestado de horas, para exibição automatica, o estudante deve apenas ter atingido o mínimo obrigatoriamente. Somente considerar exibir sem mínimo atingido se for certificado e a opção de turma para emitir certificados sem mínimo requerido estiver habilitada.
- Retirar o momento da criação do CourseCertification do model StudentProgress e adicionar no momento em que um CourseStudent for criado. Não analisar condição do user_can_certificate para a criação. Analisar esta condição somente para a exibição do certificado.
- Criar migration que lista os CourseStudent que não possuem CourseCertification e os cria. (https://docs.djangoproject.com/pt-br/1.10/topics/migrations/#data-migrations)
from timtec.
ótimo! Só precisamos testar agora zerando um ambiente de testes e fazendo o update.
from timtec.
- bug: o atestado de horas deve ser exibido independentemente se a turma permite certificação ou não.
- bug: Meus Cursos > Meus Comprovantes: o usuário está visualizando todos os certificados criados, quando na verdade deveria ver somente os certificados que estão habilitados a serem exibidos.
- bug: no tema timtec, não deve permitir certificação.
sugestão: Criar uma flag no banco que diz se o certificado pode ou não ser exibido e manipulá-la de acordo com as configurações das turmas e de certificação.
from timtec.
Related Issues (20)
- Nome professores HOT 1
- Certificação
- Remover atividade com discussão
- Não carregar módulo de Mensagem para usuário não logado
- Duplicação de mensagens no fórum HOT 3
- Botão de excluir e scroll caixa de mensagens HOT 1
- Exercício: Escolha simples HOT 1
- Exercício: Multipla escolha HOT 1
- Exercício: Verdadeiro ou Falso HOT 1
- Exercício: Relacionar sentenças
- Exercício: Atividade de leitura
- Exercício: Imagem
- Exercício: Texto simples
- Caixa de edição
- Botões superiores
- Descrição dos cursos
- Mensagens
- Novo capítulo/exercício
- Bug Forum:Exibir pergunta na view da resposta
- Verificação de e-mail após cadastro
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from timtec.