DICA IMPORTANTE

Sempre habilite a Lixeira com um prazo superior ao período do curso. Pois se o item deletado ainda estiver na lixeira, basta restaurá-lo que as notas voltam para o livro de notas.

Quando aquela situação inesperada acontece : professor deletou “por engano” uma atividade de entrega de trabalhos no Moodle com todas as notas e feedbacks já lançados e só veio a descobrir isso 6 meses depois quando o aluno reclamou de sua nota não lançada.   

 

 

 

 

 

Como se descobriu que a atividade havia sido deletada 06 meses depois?
1- a tarefa havia sido configurada para enviar um email de confirmação tão logo o aluno postasse a entrega do trabalho.
2- Com a prova do email em mãos o aluno comprovou que a entrega havia sido realizada com sucesso.
2- O aluno também recebeu um email informando que havia um feedback sobre a entrega do trabalho
ambos recebimentos continham link para a atividade (que foi deletada). 

 

 

 

 

Com os links em mãos, que continham os ids das atividades, id do curso, nome do curso era começar a rastrear logs para rastrear todas as informações.  

 

 

 

1- Relatório de logs do cursoQUEM EXCLUIU ?

 

 

 

 

Agora que já sabemos quem excluiu, quando excluiu e o id da atividade vamos em frente.
No nosso exemplo temos:
id da atividade tarefa= 3134 (id do módulo)
id do curso no moodle: 173

Vamos então rastrear  nas tabelas de histórico de itens de notas (mdl_grade_itemns_history) e na tabela de histórico de notas (mdl_grade_grades_history).

Na tabela mdl_grade_itemns_history vamos fazer a nossa primeira consulta: 

SELECT * FROM `mdl_grade_items_history` WHERE `courseid` = 173 AND `idnumber` LIKE '3134' ORDER BY `source` ASC

Com a imagem acima podemos verificar que temos um campo “oldid” que será o nosso número mágico na descoberta das notas.

oldid=971

Com essa nova informação vamos agora consultar a tabela : mdl_grade_grades_history  e passar como parametro esse valor do oldid=971 com a seguinte consulta

SELECT itemid,
u.id as idusermoodle,
concat(u.firstname, ”, u.lastname) as nomealuno,
u.username as matricula,
max(FROM_UNIXTIME(h.timemodified)) as data_alteracao,
round(h.finalgrade,2) as nota,
h.feedback,
concat(u2.firstname, ”, u2.lastname) as ‘avaliador(a)’ ,
h.itemid as iditemdeletado

FROM mdl_grade_grades_history h , mdl_user u,
mdl_user u2
WHERE
h.source like ‘mod/assign’ and
h.finalgrade >0 and
itemid=971 and
u.id=h.userid and
u2.id=h.usermodified
group by h.itemid,h.userid
order by h.itemid, concat(u.firstname, ”, u.lastname)

Com esta consulta acima teremos um relatório com todos os alunos e suas respectivas notas lançadas na época. Mesmo a atividade não tendo sida recuperada via lixeira do curso.

Share This