mirror of
https://github.com/discourse/discourse.git
synced 2024-12-25 02:43:45 +08:00
118f7869bb
This commit introduces a new feature that allows staff to bulk select and delete users directly from the users list at `/admin/users/list`. The main use-case for this feature is make deleting spammers easier when a site is under a large spam attack. Internal topic: t/140321.
47 lines
940 B
Ruby
47 lines
940 B
Ruby
# frozen_string_literal: true
|
|
|
|
class AdminUserSerializer < AdminUserListSerializer
|
|
attributes :name,
|
|
:associated_accounts,
|
|
:can_send_activation_email,
|
|
:can_activate,
|
|
:can_deactivate,
|
|
:can_approve,
|
|
:ip_address,
|
|
:registration_ip_address
|
|
|
|
has_one :single_sign_on_record, serializer: SingleSignOnRecordSerializer, embed: :objects
|
|
|
|
def can_approve
|
|
scope.can_approve?(object)
|
|
end
|
|
|
|
def include_can_approve?
|
|
SiteSetting.must_approve_users
|
|
end
|
|
|
|
def can_send_activation_email
|
|
scope.can_send_activation_email?(object)
|
|
end
|
|
|
|
def can_activate
|
|
scope.can_activate?(object)
|
|
end
|
|
|
|
def can_deactivate
|
|
scope.can_deactivate?(object)
|
|
end
|
|
|
|
def ip_address
|
|
object.ip_address.try(:to_s)
|
|
end
|
|
|
|
def registration_ip_address
|
|
object.registration_ip_address.try(:to_s)
|
|
end
|
|
|
|
def include_can_be_deleted?
|
|
true
|
|
end
|
|
end
|