This commit is contained in:
Huong Nguyen 2025-02-27 10:39:31 +07:00
commit 6cb751bcd2

View File

@ -14,6 +14,9 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
use core\output\html_writer;
use core\user;
/**
* Mentees block.
*
@ -41,7 +44,7 @@ class block_mentees extends block_base {
}
function get_content() {
global $CFG, $USER, $DB;
global $USER, $DB;
if ($this->content !== NULL) {
return $this->content;
@ -51,17 +54,23 @@ class block_mentees extends block_base {
// get all the mentees, i.e. users you have a direct assignment to
$userfieldsapi = \core_user\fields::for_name();
$allusernames = $userfieldsapi->get_sql('u', false, '', '', false)->selects;
if ($usercontexts = $DB->get_records_sql("SELECT c.instanceid, c.instanceid, $allusernames
$userfieldssql = $userfieldsapi->get_sql('u', false, '', '', false);
[$usersort] = users_order_by_sql('u', null, $this->context, $userfieldssql->mappings);
if ($users = $DB->get_records_sql("SELECT u.id, $userfieldssql->selects
FROM {role_assignments} ra, {context} c, {user} u
WHERE ra.userid = ?
AND ra.contextid = c.id
AND c.instanceid = u.id
AND c.contextlevel = ".CONTEXT_USER, array($USER->id))) {
AND c.contextlevel = ?
ORDER BY $usersort", [$USER->id, CONTEXT_USER])) {
$this->content->text = '<ul>';
foreach ($usercontexts as $usercontext) {
$this->content->text .= '<li><a href="'.$CFG->wwwroot.'/user/view.php?id='.$usercontext->instanceid.'&amp;course='.SITEID.'">'.fullname($usercontext).'</a></li>';
foreach ($users as $user) {
$userprofileurl = user::get_profile_url($user);
$userfullname = user::get_fullname($user, $this->context);
$this->content->text .= '<li>' . html_writer::link($userprofileurl, $userfullname) . '</li>';
}
$this->content->text .= '</ul>';
}