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

module Authorization
  extend ActiveSupport::Concern
  include Pundit

  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