diff --git a/group/autogroup.php b/group/autogroup.php index b66ca45cb3ae8..206cfd040ed5d 100644 --- a/group/autogroup.php +++ b/group/autogroup.php @@ -171,7 +171,7 @@ $table->width = '90%'; } $table->data = array(); - + $viewfullnames = has_capability('moodle/site:viewfullnames', $context); foreach ($groups as $group) { $line = array(); if (groups_get_group_by_name($courseid, $group['name'])) { @@ -183,7 +183,7 @@ if ($data->allocateby != 'no') { $unames = array(); foreach ($group['members'] as $user) { - $unames[] = fullname($user, true); + $unames[] = fullname($user, $viewfullnames); } $line[] = implode(', ', $unames); $line[] = count($group['members']); diff --git a/group/classes/output/user_groups_editable.php b/group/classes/output/user_groups_editable.php index aa6b98afd4bbb..13dba2adad91f 100644 --- a/group/classes/output/user_groups_editable.php +++ b/group/classes/output/user_groups_editable.php @@ -77,8 +77,10 @@ public function __construct($course, $context, $user, $coursegroups, $value) { foreach ($coursegroups as $group) { $options[$group->id] = format_string($group->name, true, ['context' => $this->context]); } - $this->edithint = get_string('editusersgroupsa', 'group', fullname($user)); - $this->editlabel = get_string('editusersgroupsa', 'group', fullname($user)); + + $fullname = fullname($user, has_capability('moodle/site:viewfullnames', $this->context)); + $this->edithint = get_string('editusersgroupsa', 'group', $fullname); + $this->editlabel = get_string('editusersgroupsa', 'group', $fullname); $attributes = ['multiple' => true]; $this->set_type_autocomplete($options, $attributes); diff --git a/group/externallib.php b/group/externallib.php index bebede4fd4b96..341e72750a886 100644 --- a/group/externallib.php +++ b/group/externallib.php @@ -556,7 +556,8 @@ public static function delete_group_members($members) { require_capability('moodle/course:managegroups', $context); if (!groups_remove_member_allowed($group, $user)) { - throw new moodle_exception('errorremovenotpermitted', 'group', '', fullname($user)); + $fullname = fullname($user, has_capability('moodle/site:viewfullnames', $context)); + throw new moodle_exception('errorremovenotpermitted', 'group', '', $fullname); } groups_remove_member($group, $user); } diff --git a/group/index.php b/group/index.php index 79c9e21aabd5c..ab3fb04d89831 100644 --- a/group/index.php +++ b/group/index.php @@ -81,6 +81,9 @@ case 'ajax_getmembersingroup': $roles = array(); if ($groupmemberroles = groups_get_members_by_role($groupids[0], $courseid, 'u.id, ' . get_all_user_name_fields(true, 'u'))) { + + $viewfullnames = has_capability('moodle/site:viewfullnames', $context); + foreach($groupmemberroles as $roleid=>$roledata) { $shortroledata = new stdClass(); $shortroledata->name = $roledata->name; @@ -88,7 +91,7 @@ foreach($roledata->users as $member) { $shortmember = new stdClass(); $shortmember->id = $member->id; - $shortmember->name = fullname($member, true); + $shortmember->name = fullname($member, $viewfullnames); $shortroledata->users[] = $shortmember; } $roles[] = $shortroledata; @@ -190,12 +193,15 @@ if ($singlegroup) { $usernamefields = get_all_user_name_fields(true, 'u'); if ($groupmemberroles = groups_get_members_by_role(reset($groupids), $courseid, 'u.id, ' . $usernamefields)) { + + $viewfullnames = has_capability('moodle/site:viewfullnames', $context); + foreach ($groupmemberroles as $roleid => $roledata) { $users = array(); foreach ($roledata->users as $member) { $users[] = (object)[ 'value' => $member->id, - 'text' => fullname($member, true) + 'text' => fullname($member, $viewfullnames) ]; } $members[] = (object)[ diff --git a/group/overview.php b/group/overview.php index 785cc6356ff51..d4619a6596277 100644 --- a/group/overview.php +++ b/group/overview.php @@ -248,9 +248,11 @@ $line[] = html_writer::tag('span', $name, array('class' => 'group_hoverdescription', 'data-groupid' => $gpid)); $hoverevents[$gpid] = get_string('descriptiona', null, $jsdescription); } + $viewfullnames = has_capability('moodle/site:viewfullnames', $context); $fullnames = array(); foreach ($users as $user) { - $fullnames[] = ''.fullname($user, true).''; + $fullnames[] = html_writer::link(new moodle_url('/user/view.php', ['id' => $user->id, 'course' => $course->id]), + fullname($user, $viewfullnames)); } $line[] = implode(', ', $fullnames); $line[] = count($users);