Module: Opro::Controllers::Concerns::Permissions::ClassMethods

Defined in:
lib/opro/controllers/concerns/permissions.rb

Instance Method Summary collapse

Instance Method Details

#require_oauth_permissions(*args) ⇒ Object Also known as: require_oauth_permission

pass in array of permissions to be validated, add options to pass to filter



78
79
80
81
82
83
84
85
86
87
# File 'lib/opro/controllers/concerns/permissions.rb', line 78

def require_oauth_permissions(*args)
  options     = args.last.is_a?(Hash) ? args.pop : {}
  permissions = args
  prepend_before_filter(options) do
    permissions.each do |permission|
      raise "You must add #{permission.inspect} to the Opro request_permissions in an initializer" unless Opro.request_permissions.include?(permission)
      controller.add_oauth_required_permission(permission)
    end
  end
end

#skip_oauth_permissions(*args) ⇒ Object Also known as: skip_oauth_permission



66
67
68
69
70
71
72
73
74
# File 'lib/opro/controllers/concerns/permissions.rb', line 66

def skip_oauth_permissions(*args)
  options     = args.last.is_a?(Hash) ? callbacks.pop : {}
  permissions = args
  prepend_before_filter(options) do
    permissions.each do |permission|
      controller.skip_oauth_required_permission(permission)
    end
  end
end