diff --git a/course/unenrol.php b/course/unenrol.php
index 21d08bec2be..d3927dcb8ef 100644
--- a/course/unenrol.php
+++ b/course/unenrol.php
@@ -20,8 +20,8 @@
require_login($course->id);
- if ($user->id != $USER->id and !isteacher($course->id)) {
- error("You must be a teacher to do this");
+ if ($user->id != $USER->id and !isteacheredit($course->id)) {
+ error("You must be a teacher with editing rights to do this");
}
if ($user->id == $USER->id and !$CFG->allowunenroll) {
diff --git a/lib/weblib.php b/lib/weblib.php
index c3bcb528c58..9ba848eb77a 100644
--- a/lib/weblib.php
+++ b/lib/weblib.php
@@ -1305,7 +1305,7 @@ function print_user($user, $course) {
$timemidnight = usergetmidnight(time());
echo "wwwroot/course/user.php?id=$course->id&user=$user->id\">$string->activity
";
if (!iscreator($user->id)) { // Includes admins
- if (isstudent($course->id, $user->id)) { // Includes admins
+ if (isteacheredit($course->id) and isstudent($course->id, $user->id)) { // Includes admins
echo "wwwroot/course/unenrol.php?id=$course->id&user=$user->id\">$string->unenrol
";
}
if ($USER->id != $user->id) {
diff --git a/user/view.php b/user/view.php
index c2a6c015fef..1955bfc1a3c 100644
--- a/user/view.php
+++ b/user/view.php
@@ -213,7 +213,7 @@
}
if ($course->category and
((isstudent($course->id) and ($user->id == $USER->id) and !isguest() and $CFG->allowunenroll) or
- (isteacher($course->id) and isstudent($course->id, $user->id))) ) {
+ (isteacheredit($course->id) and isstudent($course->id, $user->id))) ) {
echo "