Skip to content

Commit

Permalink
Fix: handle missing data when loading progress
Browse files Browse the repository at this point in the history
  • Loading branch information
davidszkiba committed May 16, 2024
1 parent 02d9190 commit 69fa027
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions classes/teststrategy/progress.php
Original file line number Diff line number Diff line change
Expand Up @@ -293,13 +293,17 @@ private static function populate_from_object(stdClass $object): self {
$instance->contextid = $data->contextid;
$instance->playedquestions = (array) $data->playedquestions;
foreach ($instance->playedquestions as $pq) {
$pq->fisherinformation = (array) $pq->fisherinformation;
if (!$pq->is_pilot) {
$pq->fisherinformation = (array) $pq->fisherinformation;
}
}
$instance->playedquestionsbyscale = (array) $data->playedquestionsbyscale;
$instance->isfirstquestion = $data->isfirstquestion;
$instance->lastquestion = $data->lastquestion;
if ($instance->playedquestions) {
$instance->lastquestion->fisherinformation = (array) $data->lastquestion->fisherinformation;
if (!$instance->lastquestion->is_pilot) {
$instance->lastquestion->fisherinformation = (array) $data->lastquestion->fisherinformation;
}
}

$instance->breakend = $data->breakend;
Expand All @@ -313,8 +317,8 @@ private static function populate_from_object(stdClass $object): self {
$instance->usageid = $data->usageid;
$instance->session = $data->session;
$instance->excludedquestions = $data->excludedquestions;
$instance->gaveupquestions = $data->gaveupquestions;
$instance->starttime = $data->starttime;
$instance->gaveupquestions = $data->gaveupquestions ?? null;
$instance->starttime = $data->starttime ?? 0;

// Fallback for old attempts that did not store the quizsettings: use the current ones.
if (!property_exists($object, 'quizsettings') || $object->quizsettings === null) {
Expand Down

0 comments on commit 69fa027

Please sign in to comment.