Module: RoleAuthorization::Controller::ClassMethods

Defined in:
lib/role_authorization/controller.rb

Instance Method Summary collapse

Instance Method Details

#add_role_authorization_filterObject



26
27
28
29
30
# File 'lib/role_authorization/controller.rb', line 26

def add_role_authorization_filter
  callbacks = _process_action_callbacks
  chain = callbacks.select {|cl| cl.klass.to_s.include?(name)}.collect(&:filter).select {|c| c.is_a?(Symbol)}
  before_filter :check_request_authorization unless chain.include?(:check_request_authorization)
end

#allow(options = {}, &block) ⇒ Object



21
22
23
24
# File 'lib/role_authorization/controller.rb', line 21

def allow(options = {}, &block)
  add_to_ruleset(self.controller_rule_name, &block)
  add_role_authorization_filter
end

#allow_group(*args) ⇒ Object



16
17
18
19
# File 'lib/role_authorization/controller.rb', line 16

def allow_group(*args)
  add_to_allowable_groups(self.controller_rule_name, args)
  add_role_authorization_filter
end

#controller_modelObject



36
37
38
# File 'lib/role_authorization/controller.rb', line 36

def controller_model
  @controller_model ||= name.gsub('Controller', '').singularize
end

#controller_rule_nameObject



32
33
34
# File 'lib/role_authorization/controller.rb', line 32

def controller_rule_name
  @controller_rule_name ||= name.gsub('Controller', '').underscore.downcase
end