Module: FlexibleAccessibility::ControllerMethods::ClassMethods

Defined in:
lib/flexible_accessibility/controller_methods.rb

Instance Method Summary collapse

Instance Method Details

#authorize(args = {}) ⇒ Object

Macro for define actions with authorization



19
20
21
22
23
24
25
# File 'lib/flexible_accessibility/controller_methods.rb', line 19

def authorize(args={})
   valid_arguments = parse_and_validate_arguments(args)
   self.instance_variable_set(:@_verifiable_routes, valid_arguments[:only]) unless valid_arguments[:only].nil?
   self.instance_variable_set(:@_verifiable_routes, self.action_methods - valid_arguments[:except]) unless valid_arguments[:except].nil?
   self.instance_variable_set(:@_verifiable_routes, self.action_methods) if valid_arguments[:all]
   self.instance_variable_set(:@_non_verifiable_routes, []) if self.instance_variable_get(:@_non_verifiable_routes).nil?
end

#not_authorize(args = {}) ⇒ Object

Macro for define actions without authorization



11
12
13
14
15
16
# File 'lib/flexible_accessibility/controller_methods.rb', line 11

def not_authorize(args={})
  valid_arguments = parse_and_validate_arguments(args)
  self.instance_variable_set(:@_non_verifiable_routes, self.action_methods) if valid_arguments[:all]
  self.instance_variable_set(:@_non_verifiable_routes, valid_arguments[:only]) unless valid_arguments[:only].nil?
  self.instance_variable_set(:@_verifiable_routes, []) if self.instance_variable_get(:@_non_verifiable_routes).nil?
end

#skip_authorization_hereObject

Compatibility with previous versions



6
7
8
# File 'lib/flexible_accessibility/controller_methods.rb', line 6

def skip_authorization_here
  not_authorize :all
end