inducer / relate

RELATE is an Environment for Learning And TEaching
http://documen.tician.de/relate
Other
375 stars 114 forks source link

Timing shown on list of grades? #912

Open KlavsKlavsen opened 2 years ago

KlavsKlavsen commented 2 years ago

If I go look at my new quiz: https://relate.example.com/course/test-quiz1/grading/by-opportunity/1/?view_page_grades=1 It would be very nice to have the "time to finish" there also.. I need the time "per person" - as this affects the grade.. I did see you had some advanced auto thing for timing stuff.. But it would be very nice if the "time taken" per question (of in total quiz atleast) would be vieable somewhere? I can "sort of see it" - in analytics- but thats not user specific.

inducer commented 2 years ago

"Time per question" is generally ill-defined IMO. Without additional client-side tracking, all we have is GET/POST timestamps for different pages. It may be possible to do something approximate that's good enough for analytics, but personally I wouldn't base any grades on it. There's too much that can go wrong, even if we had snoopy Javascript (which is easy to defeat): what if multiple tabs are open? what if multiple devices are looking at the same session?

As for time per session, that's well-defined and easy to show. I'd be happy to take a patch to show it.

KlavsKlavsen commented 2 years ago

Time per session would be great.

KlavsKlavsen commented 2 years ago

could you give some pointers as to where in the code to do this?

inducer commented 2 years ago

To find the time per session, simply compute the difference between these two:

https://github.com/inducer/relate/blob/2186f96bfb1bb45d498c162cf8d824e9a84f6c4a/course/models.py#L880-L883

and insert the relevant HTML here:

https://github.com/inducer/relate/blob/2186f96bfb1bb45d498c162cf8d824e9a84f6c4a/course/templates/course/gradebook-by-opp.html#L181

(you have access to the flow session as grade_info.flow_session.