From 54dc1112cb380d117cded0c83c0cdab8cd8a687f Mon Sep 17 00:00:00 2001 From: Ilya Tregubov Date: Wed, 3 Jul 2024 12:07:07 +0800 Subject: [PATCH] MDL-79541 core_grades: Add missing user info to search services. Seems just fullname is not enough. So added all name fields. --- .../classes/external/get_enrolled_users_for_search_widget.php | 3 +++ grade/classes/external/get_enrolled_users_for_selector.php | 3 +++ grade/report/grader/classes/external/get_users_in_report.php | 3 +++ 3 files changed, 9 insertions(+) diff --git a/grade/classes/external/get_enrolled_users_for_search_widget.php b/grade/classes/external/get_enrolled_users_for_search_widget.php index 74a17e8069c..5cb7d67346a 100644 --- a/grade/classes/external/get_enrolled_users_for_search_widget.php +++ b/grade/classes/external/get_enrolled_users_for_search_widget.php @@ -108,6 +108,9 @@ class get_enrolled_users_for_search_widget extends external_api { $guiuser = $userdata->user; $user = new \stdClass(); $user->fullname = fullname($guiuser); + foreach (\core_user\fields::get_name_fields() as $field) { + $user->$field = $guiuser->$field ?? null; + } $user->id = $guiuser->id; $user->url = (new moodle_url($actionbaseurl, ['id' => $courseid, 'userid' => $guiuser->id]))->out(false); $userpicture = new \user_picture($guiuser); diff --git a/grade/classes/external/get_enrolled_users_for_selector.php b/grade/classes/external/get_enrolled_users_for_selector.php index 4b547d6999d..5c7bf55b471 100644 --- a/grade/classes/external/get_enrolled_users_for_selector.php +++ b/grade/classes/external/get_enrolled_users_for_selector.php @@ -102,6 +102,9 @@ class get_enrolled_users_for_selector extends external_api { $userforselector = new \stdClass(); $userforselector->id = $userdata->user->id; $userforselector->fullname = fullname($userdata->user); + foreach (\core_user\fields::get_name_fields() as $field) { + $userforselector->$field = $userdata->user->$field ?? null; + } $userpicture = new user_picture($userdata->user); $userpicture->size = 1; $userforselector->profileimageurl = $userpicture->get_url($PAGE)->out(false); diff --git a/grade/report/grader/classes/external/get_users_in_report.php b/grade/report/grader/classes/external/get_users_in_report.php index 16a7e4c2b58..eaeca1d65b9 100644 --- a/grade/report/grader/classes/external/get_users_in_report.php +++ b/grade/report/grader/classes/external/get_users_in_report.php @@ -95,6 +95,9 @@ class get_users_in_report extends external_api { $userforselector = new \stdClass(); $userforselector->id = $user->id; $userforselector->fullname = fullname($user); + foreach (\core_user\fields::get_name_fields() as $field) { + $userforselector->$field = $user->$field ?? null; + } $userpicture = new user_picture($user); $userpicture->size = 1; $userforselector->profileimageurl = $userpicture->get_url($PAGE)->out(false);