# BUGS - default prefix should be obtained from each course (yaml conf)? - quando a pergunta devolve comments, este é apresentado, mas fica persistente nas tentativas seguintes. devia ser limpo apos a segunda submissao. - a opcao max_tries na especificacao das perguntas é cumbersome... usar antes tries? - tabelas nas perguntas radio/checkbox não ocupam todo o espaço como em question. - nas perguntas de código, quando erra nao se devia acrescentar mesma pergunta no fim. # TODO - mostrar feedback/solucoes quando acerta, ou excede max tries. - mostrar capitulos e subtopicos de forma hierarquica. clicar no capitulo expande as dependencias. - mostrar rankings alunos/perguntas respondidas/% correctas/valor esperado topicos. - max tries nas perguntas. - botão não sei... - mostrar icon "loading..." enquanto está a corrigir uma pergunta. - session management. close after inactive time. - radio e checkboxes, aceitar numeros como seleccao das opcoes. - reload das perguntas enquanto online. ver signal em http://stackabuse.com/python-async-await-tutorial/ - tabela de progresso de todos os alunos por topico. - tabela com perguntas / quantidade de respostas certas/erradas. - tabela com topicos / quantidade de estrelas. - pymips: activar/desactivar instruções - implementar servidor http com redirect para https. - ao fim de 3 tentativas com password errada, envia email com nova password. - titulos das perguntas não suportam markdown. - pagina report que permita ver tabela alunos/topicos, estatisticas perguntas mais falhadas, tempo médio por pergunta. - normalizar com perguntations. # FIXED - na definicao dos topicos, indicar: "file: questions.yaml" (default questions.yaml) "shuffle: True/False" (default False) "choose: 6" (default tudo) - max tries não avança para seguinte ao fim das tentativas. - ver se ref guardada na BD é só a da pergunta ou inclui o path. -> so ref - nao esta a guardar as respostas erradas. - reload do topic não gera novas perguntas (alunos abusavam do reload) - usar codemirror no textarea - quando erra uma textarea, o comment fica na nova pergunta que se gera. - arranjar os links para static/libs como no perguntations. - each topic only loads a sample of K questions (max) in random order. - change password modal nao aparece no ipad (safari e firefox) - detect questions in questions.yaml without ref -> error ou generate default. - generators e correct scripts que durem muito tempo bloqueiam o eventloop do tornado. - servir imagens/ficheiros. - radio: suporte para multiplas opcoes correctas e erradas, escolhendo-se uma selecção aleatoria destas (so com 1 certa). - checkbox: cada opção pode ser uma dupla (certo, errado) sendo escolhida uma aleatória. - async/threadpool no bcrypt do initdb. - numero de estrelas depende da proporcao entre certas e erradas. - image brand da universidade está esbatida. - reportar comentarios após submeter. - error if demo.yaml has no topics - update de fontawesome para versão 5.0.6. - remover learn.css uma vez que nao é usado em lado nenhum? - check if user already logged in - mover javascript para ficheiros externos e carregar com script defer src - implementar xsrf. Ver [http://www.tornadoweb.org/en/stable/guide/security.html#cross-site-request-forgery-protection]() - se refs de um topic estao invalidos, nao carrega esse topico. devia haver um error nos logs a indicar qual o ref invalido. - link directo para topico nao valida se topico esta unlocked. - templates not working: quesntion-information, question-warning (remove all informative panels??) - enderecos errados dao internal error. - barra de progresso nao está visível. - tabs em textarea nao funcionam correctamente (insere 1 espaco em vez de 4) - guardar state cada vez que topico termina - textarea deve mostrar no html os valores iniciais de ans, se existirem - aumentar espaço a seguir às tabelas no texto - animação no final de cada topico para se perceber a transição - "<" is not escaped in markdown. - Está a mostrar a solução em 'comments'!!! - database: answers não tem referencia para o topico, so para question_ref - melhorar markdown das tabelas. - gravar evolucao na bd no final de cada topico. - submeter questoes radio, da erro se nao escolher nenhuma opção. - indentação da primeira linha de código não funciona. - markdown com o mistune. - change password in maintopics.html, falta menu para lançar modal - ver documentacao de migracao para networkx 2.0 https://networkx.github.io/documentation/stable/release/migration_guide_from_1.x_to_2.0.html - script para adicionar users/reset passwords. - os topicos locked devem estar inactivos no sidebar. - enter faz GET /question, que responde com json no ecran. (solution: disabled enter) - topicos no sidebar devem ser links para iniciar um topico acessivel. - logs inicio de topico - indicar o topico actual no sidebar - reload da página rebenta o estado. - text deve mostrar no html os valores iniciais de ans, se existir - nao permite perguntas repetidas. iterar questions da configuracao em vez das do ficheiro. ver app.py linha 223. - level depender do numero de respostas correctas - pymips a funcionar - logs mostram que está a gerar cada pergunta 2 vezes...?? - letsencrypt.org - alterar password. - barra de progresso a funcionar - mostra tópicos do lado esquerdo, indicando quais estão feitos - database hardcoded in LearnApp. - se students.db não existe, rebenta. - não entra à primeira - configuração e linha de comando. - o browser é redireccionado para /question em vez de fazer um post?? quando se pressiona enter numa caixa text edit. - load/save the knowledge state of the student - servir ficheiros de public temporariamente - path dos generators scripts mal construido - questions hardcoded in LearnApp. - Factory para cada pergunta individual em vez de pool - implementar navegacao radio/checkbox. cursor cima/baixo, espaco selecciona, enter submete. - logging - textarea tem codigo para preencher o texto, mas ja não é necessário porque pergunta não é reloaded. - gravar answers -> db - como gerar key para secure cookie. - https. certificados selfsigned, no-ip nao suporta certificados - reset ao servidor mantem cookie no broser e rebenta. necessario fazer logout. - models.py tabela de testes não faz sentido. - autenticacao. ver exemplo do blog - primeira pergunta aparece a abanar. - user name na barra de navegação. - textarea mantem ultima resposta errada. util para respostas grandes. - ver campo hidden com ref que esta na textarea mas nao nos outros. - shift enter submete textarea - clicar texto selecciona checkboxes/radio. - focar text/textarea - implementar template base das perguntas base e estender para cada tipo. - submissão com enter em perguntas text faz get? provavelmente está a fazer o submit do form em vez de ir pelo ajax.