class RouteAuthorizer::Permission
Attributes
role[R]
Public Class Methods
new(role)
click to toggle source
# File lib/route_authorizer/permission.rb, line 5 def initialize(role) @role = role.to_s end
Public Instance Methods
permit?(controller_path, action_name)
click to toggle source
# File lib/route_authorizer/permission.rb, line 9 def permit?(controller_path, action_name) permit_action? [ [:all], [controller_path.to_sym, :all], [controller_path.to_sym, action_name.to_sym], ] end
Private Instance Methods
default()
click to toggle source
# File lib/route_authorizer/permission.rb, line 30 def default [] end
permit_action?(role_action)
click to toggle source
# File lib/route_authorizer/permission.rb, line 21 def permit_action?(role_action) (role_permissions & role_action).any? end
role_permissions()
click to toggle source
# File lib/route_authorizer/permission.rb, line 25 def role_permissions others_permissions = respond_to?(role, true) ? send(role) : [] default + others_permissions end