Cannot access Hotpot Crossword activity

Cannot access Hotpot Crossword activity

by Christe McMenomy -
Number of replies: 2

Current server environment: Gentoo Linux 5.10.61 // Apache 2.0 // PHP 8,.0.12

Moodle: 3.11.3+ Build 2021 0924

Hotpot Module 2020-06-05

I tried to access an existing Hotpot Crossword  written four years ago and working since then to change the due date.  I got a blank screen and had to back out.  PHP Error log shows message:

[Sat Nov 06 10:04:31.220440 2021]...Default exception handler: Can't find data record in database. Debug: SELECT md.name\n                                                 FROM {modules} md\n                                                 JOIN {course_modules} cm ON cm.module = md.id\n                                                WHERE cm.id = :cmid\n[array (\n  'cmid' => 0,\n)]\nError code: invalidrecordunknown\n* line 1674 of /lib/dml/moodle_database.php: dml_missing_record_exception thrown\n* line 1744 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()\n* line 1226 of /lib/datalib.php: call to moodle_database->get_field_sql()\n* line 48 of /course/rest.php: call to get_coursemodule_from_id()\n, referer: https://www.scholarsonline.org/ScholarsOnline/moodle/course/view.php?id=811&notifyeditingon=1

I then tried removing the activity from the current course session; this worked.  I created a new hotpot activity and tried to load the JCL file, which appeared to work and set the dates.  However, on saving the activity, I again got a blank screen, and this time the error log showed

[Sat Nov 06 10:40:17.768022 2021] ...  Default exception handler: Exception - array_intersect(): Argument #1 ($array) must be of type array, null given Debug: \nError code: generalexceptionmessage\n* line 1793 of /grade/report/grader/lib.php: TypeError thrown\n* line 1793 of /grade/report/grader/lib.php: call to array_intersect()\n* line 1815 of /grade/report/grader/lib.php: call to grade_report_grader::filter_collapsed_categories()\n* line 133 of /grade/report/grader/lib.php: call to grade_report_grader::get_collapsed_preferences()\n* line 140 of /grade/report/grader/index.php: call to grade_report_grader->__construct()\n, referer: https://www.scholarsonline.org/ScholarsOnline/moodle/course/view.php?id=811

So the students can complete their assignments, I've removed the activity.  Any ideas why this has suddenly stopped working?

Average of ratings: -
In reply to Christe McMenomy

Re: Cannot access Hotpot Crossword activity

by Christe McMenomy -

OK, I figured this out. The version of the HotPot module installed is not PHP 8.0 compliant.  Unfortunately, I can't back out of PHP 8.0 at this point because of security concerns, so we'll have to disable the hotpot exercises until  there is PHP 8.0 compliant version to install or replace them.


Does anyone know if there are plans to release a PHP 8.0 compliant version?

In reply to Christe McMenomy

Re: Cannot access Hotpot Crossword activity

by Gordon Bateson -
Picture of Core developers Picture of Peer reviewers Picture of Plugin developers
Hi Christe,
sorry to hear about the problems you are having with the HotPot module on PHP 8.0.

The next release of the HotPot module will be compliant with PHP 8.0, and will also handle HP 7.0 files and their output formats. I'm having toruble finding time to do the work though, so I can't give a defeinite date when it will be ready for you.
Average of ratings: Useful (1)