mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FEATURE: allow user search API to restrict to group
This commit is contained in:
@@ -10,11 +10,20 @@ class UserSearch
|
||||
@topic_allowed_users = opts[:topic_allowed_users]
|
||||
@searching_user = opts[:searching_user]
|
||||
@limit = opts[:limit] || 20
|
||||
@group = opts[:group]
|
||||
@guardian = Guardian.new(@searching_user)
|
||||
@guardian.ensure_can_see_group!(@group) if @group
|
||||
end
|
||||
|
||||
def scoped_users
|
||||
users = User.where(active: true, staged: false)
|
||||
|
||||
if @group
|
||||
users = users.where('users.id IN (
|
||||
SELECT user_id FROM group_users WHERE group_id = ?
|
||||
)', @group.id)
|
||||
end
|
||||
|
||||
unless @searching_user && @searching_user.staff?
|
||||
users = users.not_suspended
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user