mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2024-12-04 06:19:05 +01:00
7bb8b0b2fc
* Add moderator role and add pundit policies for admin actions * Add rake task for turning user into mod and revoking it again * Fix handling of unauthorized exception * Deliver new report e-mails to staff, not just admins * Add promote/demote to admin UI, hide some actions conditionally * Fix unused i18n
25 lines
519 B
Ruby
25 lines
519 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Admin
|
|
class RolesController < BaseController
|
|
before_action :set_user
|
|
|
|
def promote
|
|
authorize @user, :promote?
|
|
@user.promote!
|
|
redirect_to admin_account_path(@user.account_id)
|
|
end
|
|
|
|
def demote
|
|
authorize @user, :demote?
|
|
@user.demote!
|
|
redirect_to admin_account_path(@user.account_id)
|
|
end
|
|
|
|
private
|
|
|
|
def set_user
|
|
@user = Account.find(params[:account_id]).user || raise(ActiveRecord::RecordNotFound)
|
|
end
|
|
end
|
|
end
|