about summary refs log tree commit diff
path: root/app/controllers/concerns/authorization.rb
blob: 05260cc8ba83fefd0076cac6a94d5b102066b7b7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# frozen_string_literal: true

module Authorization
  extend ActiveSupport::Concern

  include Pundit::Authorization

  def pundit_user
    current_account
  end

  def authorize(*)
    super
  rescue Pundit::NotAuthorizedError
    raise Mastodon::NotPermittedError
  end

  def authorize_with(user, record, query)
    Pundit.authorize(user, record, query)
  rescue Pundit::NotAuthorizedError
    raise Mastodon::NotPermittedError
  end
end