mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
Improved Group Member Management on User Administration
Allows for a quick and easy group membership management on the user-administration page. Uses the select2 UI component to autosuggest other groups, remove existing ones and lock in automatic groups.
This commit is contained in:
@ -17,6 +17,8 @@ class Admin::UsersController < Admin::AdminController
|
||||
:block,
|
||||
:unblock,
|
||||
:trust_level,
|
||||
:add_group,
|
||||
:remove_group,
|
||||
:primary_group,
|
||||
:generate_api_key,
|
||||
:revoke_api_key]
|
||||
@ -101,6 +103,21 @@ class Admin::UsersController < Admin::AdminController
|
||||
render_serialized(@user, AdminUserSerializer)
|
||||
end
|
||||
|
||||
def add_group
|
||||
group = Group.find(params[:group_id].to_i)
|
||||
return render_json_error group unless group && !group.automatic
|
||||
group.users << @user
|
||||
render nothing: true
|
||||
end
|
||||
|
||||
def remove_group
|
||||
group = Group.find(params[:group_id].to_i)
|
||||
return render_json_error group unless group && !group.automatic
|
||||
group.users.delete(@user)
|
||||
render nothing: true
|
||||
end
|
||||
|
||||
|
||||
def primary_group
|
||||
guardian.ensure_can_change_primary_group!(@user)
|
||||
@user.primary_group_id = params[:primary_group_id]
|
||||
|
Reference in New Issue
Block a user