@@ -46,18 +46,22 @@ public function search_users_with_groups(string $search = '', bool $searchanywhe
46
46
$ fields = 'SELECT ' . $ ufields ;
47
47
$ countfields = 'SELECT COUNT(u.id) ' ;
48
48
list ($ insql , $ inparams ) = $ DB ->get_in_or_equal (array_keys ($ groups ), SQL_PARAMS_NAMED );
49
-
49
+ $ capability = 'mod/dialogue:receive ' ;
50
+ $ context = $ this ->context ;
51
+ [$ enrolledsql , $ enrolledparams ] = get_enrolled_sql ($ context , $ capability , 0 , true );
50
52
$ sql = " FROM {user} u
51
53
$ joins
52
54
JOIN {user_enrolments} ue ON ue.userid = u.id
53
55
JOIN {enrol} e ON ue.enrolid = e.id
54
56
JOIN ({groups_members} gm JOIN {groups} g ON (g.id = gm.groupid))
55
57
ON (u.id = gm.userid AND g.courseid = e.courseid)
58
+ JOIN ( $ enrolledsql) je ON je.id = u.id
56
59
WHERE $ wherecondition
60
+ AND u.suspended = 0
57
61
AND e.courseid = :courseid
58
62
AND g.id $ insql " ;
59
63
$ params ['courseid ' ] = $ this ->course ->id ;
60
- $ params = array_merge ($ params , $ inparams );
64
+ $ params = array_merge ($ params , $ inparams, $ enrolledparams );
61
65
return $ this ->execute_search_queries ($ search , $ fields , $ countfields , $ sql , $ params , $ page , $ perpage , 0 , false );
62
66
}
63
67
@@ -106,7 +110,8 @@ public function search_users(string $search = '', bool $searchanywhere = false,
106
110
$ sql = " FROM {user} u
107
111
$ joins
108
112
JOIN ( $ enrolledsql) je ON je.id = u.id
109
- WHERE $ wherecondition " ;
113
+ WHERE $ wherecondition
114
+ AND u.suspended = 0 " ;
110
115
111
116
$ params = array_merge ($ params , $ enrolledparams );
112
117
0 commit comments