mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
FEATURE: Allow admins to lock users from TL3 promotion/demotion
Also, update the display logic for the leader promotion screen to account for the demotion grace period.
This commit is contained in:
@ -17,6 +17,7 @@ class Admin::UsersController < Admin::AdminController
|
||||
:block,
|
||||
:unblock,
|
||||
:trust_level,
|
||||
:trust_level_lock,
|
||||
:add_group,
|
||||
:remove_group,
|
||||
:primary_group,
|
||||
@ -134,6 +135,19 @@ class Admin::UsersController < Admin::AdminController
|
||||
render_json_error(e.message)
|
||||
end
|
||||
|
||||
def trust_level_lock
|
||||
guardian.ensure_can_change_trust_level!(@user)
|
||||
|
||||
new_lock = params[:locked]
|
||||
unless new_lock =~ /t|f|true|false/
|
||||
return render_json_error I18n.t('errors.invalid_boolaen')
|
||||
end
|
||||
|
||||
@user.trust_level_locked = !!(new_lock =~ /t|true/)
|
||||
@user.save
|
||||
render nothing: true
|
||||
end
|
||||
|
||||
def approve
|
||||
guardian.ensure_can_approve!(@user)
|
||||
@user.approve(current_user)
|
||||
|
Reference in New Issue
Block a user