Class: Authoryze::Rails::CanFilter

Inherits:
Object
  • Object
show all
Defined in:
lib/authoryze/rails/can_filter.rb

Instance Method Summary collapse

Constructor Details

#initialize(permissions) ⇒ CanFilter

Returns a new instance of CanFilter.



4
5
6
# File 'lib/authoryze/rails/can_filter.rb', line 4

def initialize(permissions)
  @permissions = permissions
end

Instance Method Details

#filter(controller) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/authoryze/rails/can_filter.rb', line 8

def filter(controller)
  @permissions.each do |permission|
    unless controller.can.send("#{permission}?")
      raise Authoryze::AccessDenied, "Permission '#{permission}' is not allowed for current user"
    end
  end
end