bfh / moodle-quiz_archive

GNU General Public License v3.0
4 stars 3 forks source link

Not working with Moodle 3.4? #2

Closed trampgeek closed 6 years ago

trampgeek commented 6 years ago

This looks like it could be very useful, Luca, but unfortunately when I installed it on our production Moodle server (version 2017111300.07, 3.4+) I got the following error when I selected the Archive entry from a quiz admin results menu:

Exception - Call to undefined function quiz_create_attempt_handling_errors()

A colleague tells me that the plugin works fine with Moodle 3.5, however. So I can look forward to using it as soon as we upgrade our production server at the end of the academic year.

lucaboesch commented 6 years ago

Dear Richard, Unfortunately I can't reproduce this on a brand new Moodle 3.4.6 (Build: 20181112). The Exception does not show. Can you try to re-trigger that error and maybe supply more information? Best, Luca

trampgeek commented 6 years ago

Sorry Luca, I should have also mentioned that I had grep'd for the function quiz_create_attempt_handling_errors() in that version of Moodle and found it simply doesn't exist there

Here's a screen dump of the error image

The relevant stack trace (with debugging turned on): Stack trace: line 133 of /mod/quiz/report/archive/report.php: Error thrown line 105 of /mod/quiz/report/archive/report.php: call to quiz_archive_report->quiz_report_get_student_attempt() line 87 of /mod/quiz/report/archive/report.php: call to quiz_archive_report->display_archive() line 97 of /mod/quiz/report.php: call to quiz_archive_report->display()

Comparing the code on that 3.4 Moodle version with my 3.5 development version showed that mod/quiz/locallib.php had been extensively modified between these two versions. From what you're saying, the change occurred mid-3.4 not, as I was assuming, between 3.4 and 3.5.

Here's the version on our production server for your reference: locallib.zip

I can see that this makes it difficult for you to specify what versions of Moodle your plugin works with.

I'm just in the process of setting up our server for 2019; it will use Moodle 3.5 so all will be well.

Thanks for making the plugin available - I look forward to using it next year.

Regards

Richard

ewallah commented 6 years ago

This cannot work as the class quiz_archive_options is a base class, so the the parent:: keyword can not be used.

Travis is explaining the error: The parser has reached an invalid state near line "155" in file "/home/travis/build/moodle/mod/quiz/report/archive/archive_options.php". Please check the following conditions: The keyword "parent" was used as type hint but the class "quiz_archive_options" does not declare a parent.