diff --git a/course/classes/reportbuilder/local/entities/enrolment.php b/course/classes/reportbuilder/local/entities/enrolment.php index d48edc1137d..0d2ee75f7ac 100644 --- a/course/classes/reportbuilder/local/entities/enrolment.php +++ b/course/classes/reportbuilder/local/entities/enrolment.php @@ -150,7 +150,6 @@ class enrolment extends base { ->add_joins($this->get_joins()) ->set_type(column::TYPE_TEXT) ->add_field($this->get_status_field_sql(), 'status') - ->add_field("{$userenrolments}.userid") ->set_is_sortable(true) ->add_callback([enrolment_formatter::class, 'enrolment_status']); @@ -202,7 +201,7 @@ class enrolment extends base { THEN " . status_field::STATUS_NOT_CURRENT . " ELSE " . status_field::STATUS_ACTIVE . " END - ELSE " . status_field::STATUS_SUSPENDED . " + ELSE {$userenrolments}.status END"; } diff --git a/course/classes/reportbuilder/local/formatters/enrolment.php b/course/classes/reportbuilder/local/formatters/enrolment.php index 76ca6cc6b90..9a952a40719 100644 --- a/course/classes/reportbuilder/local/formatters/enrolment.php +++ b/course/classes/reportbuilder/local/formatters/enrolment.php @@ -69,14 +69,14 @@ class enrolment { /** * Return enrolment status for user * - * @param string $value - * @param stdClass $row + * @param string|null $value * @return string|null */ - public static function enrolment_status(string $value, stdClass $row): ?string { - if (!$row->userid) { + public static function enrolment_status(?string $value): ?string { + if ($value === null) { return null; } + $statusvalues = self::enrolment_values(); $value = (int) $value;