turnitin / moodle-plagiarism_turnitinsim

7 stars 9 forks source link

Quiz preview is broken #158

Closed rrusso closed 4 months ago

rrusso commented 1 year ago

Create a quiz with Turnitin similarity reports enabled and a few essay questions.

Preview the quiz and answer the questions.

Submit all and finish.

Turnitin returns the following:

Can't find data record in database table quiz_attempts.

More information about this error

× Debug info: SELECT * FROM {quiz_attempts} WHERE id = ? [array ( 0 => '160', )] Error code: invalidrecord × Stack trace: line 1654 of /lib/dml/moodle_database.php: dml_missing_record_exception thrown line 1630 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select() line 671 of /mod/quiz/attemptlib.php: call to moodle_database->get_record() line 689 of /mod/quiz/attemptlib.php: call to quiz_attempt::create_helper() line 865 of /plagiarism/turnitinsim/lib.php: call to quiz_attempt::create() line 676 of /plagiarism/turnitinsim/lib.php: call to plagiarism_plugin_turnitinsim->quiz_handler() line 370 of /plagiarism/turnitinsim/lib.php: call to plagiarism_plugin_turnitinsim->submission_handler() line 48 of /lib/plagiarismlib.php: call to plagiarism_plugin_turnitinsim->get_links() line 72 of /question/type/essay/renderer.php: call to plagiarism_get_links() line 403 of /question/engine/renderer.php: call to qtype_essay_renderer->formulation_and_controls() line 108 of /question/engine/renderer.php: call to core_question_renderer->formulation() line 113 of /question/behaviour/behaviourbase.php: call to core_question_renderer->question() line 907 of /question/engine/questionattempt.php: call to question_behaviour->render() line 461 of /question/engine/questionusage.php: call to question_attempt->render() line 1783 of /mod/quiz/attemptlib.php: call to question_usage_by_activity->render_question() line 1745 of /mod/quiz/attemptlib.php: call to quiz_attempt->render_question_helper() line 187 of /mod/quiz/renderer.php: call to quiz_attempt->render_question() line 56 of /mod/quiz/renderer.php: call to mod_quiz_renderer->questions() line 264 of /mod/quiz/review.php: call to mod_quiz_renderer->review_page()

What it's doing is calling the quiz_attempt::create function and sending the uniqueid of the quiz instead of the id.

I'm going to go ahead and fix this and submit a pull request as we cannot wait for you guys to do it.

will-bulluck commented 10 months ago

@rrusso - any word on this? I have a client using this with the same issue.

jack-tii commented 4 months ago

This will be fixed in our next release.

acquaalta commented 3 months ago

@jack-tii Hi,

  1. Thanks for fixing the issue.
  2. In the latest general announcement, @carl-hostrander wrote "We are planning to have plugin releases twice a year, in June and in October where needed". Since it was written not a lot of time after June, I wonder - Do you plan to release a "June" release soon, or we should expect to see the next release only in October?
jack-tii commented 2 months ago

Apologies for the delay, the next release is scheduled for early October