Class: Polar::PermissionHash

Inherits:
Hash
  • Object
show all
Defined in:
lib/polar/permissions.rb

Instance Method Summary collapse

Constructor Details

#initialize(method) ⇒ PermissionHash

Returns a new instance of PermissionHash.



80
81
82
# File 'lib/polar/permissions.rb', line 80

def initialize(method)
  self[:permission_name] = method.to_sym
end

Instance Method Details

#add(perm_type, params) ⇒ Object



92
93
94
95
96
97
98
99
# File 'lib/polar/permissions.rb', line 92

def add(perm_type, params)
  self[:access_type] = perm_type
  self[:object] = params.shift
  self[:params] = params.first
  Polar::Permissions.add_for_controller(self)
  Polar::Permissions.defined_store[self[:permission_name]] ||= []
  Polar::Permissions.defined_store[self[:permission_name]] << self
end

#allow(*params) ⇒ Object



84
85
86
# File 'lib/polar/permissions.rb', line 84

def allow(*params)
  add(:allow, params)
end

#deny(*params) ⇒ Object



88
89
90
# File 'lib/polar/permissions.rb', line 88

def deny(*params)
  add(:deny, params)      
end