class Authorizy::Config

Attributes

aliases[RW]
cop[RW]
current_user[RW]
denied[RW]
dependencies[RW]
field[RW]
redirect_url[RW]

Public Class Methods

new() click to toggle source
# File lib/authorizy/config.rb, line 7
def initialize
  @aliases      = {}
  @cop          = Authorizy::BaseCop
  @current_user = ->(context) { context.respond_to?(:current_user) ? context.current_user : nil }

  @denied = lambda { |context|
    info = I18n.t('authorizy.denied', controller: context.params[:controller], action: context.params[:action])

    return context.render(json: { message: info }, status: 403) if context.request.xhr?

    context.redirect_to(redirect_url.call(self), info: info)
  }

  @dependencies = {}
  @field        = ->(current_user) { current_user.respond_to?(:authorizy) ? current_user.authorizy : {} }
  @redirect_url = ->(context) { context.respond_to?(:root_url) ? context.root_url : '/' }
end