Class: Radmin::Authorization
- Inherits:
-
Object
- Object
- Radmin::Authorization
- Includes:
- CanCan::Ability
- Defined in:
- lib/radmin/authorization.rb
Defined Under Namespace
Classes: DSLMethods
Instance Attribute Summary collapse
-
#user ⇒ Object
Returns the value of attribute user.
Class Method Summary collapse
Instance Method Summary collapse
- #includes(*role_names) ⇒ Object
-
#initialize(user) ⇒ Authorization
constructor
A new instance of Authorization.
Constructor Details
#initialize(user) ⇒ Authorization
Returns a new instance of Authorization.
17 18 19 20 21 22 23 |
# File 'lib/radmin/authorization.rb', line 17 def initialize(user) self.user = user run_role(:guest) unless self.user.role_symbols.any? self.user.role_symbols.each do |r| run_role(r) end end |
Instance Attribute Details
#user ⇒ Object
Returns the value of attribute user.
13 14 15 |
# File 'lib/radmin/authorization.rb', line 13 def user @user end |
Class Method Details
.authorized?(user, action, subject) ⇒ Boolean
31 32 33 34 35 36 |
# File 'lib/radmin/authorization.rb', line 31 def self.(user, action, subject) new(user).(action.to_sym, subject) true rescue CanCan::AccessDenied false end |
.define_rules(file) ⇒ Object
38 39 40 |
# File 'lib/radmin/authorization.rb', line 38 def self.define_rules(file) DSLMethods.new.instance_eval(File.read(file)) if File.exist?(file) end |
Instance Method Details
#includes(*role_names) ⇒ Object
25 26 27 28 29 |
# File 'lib/radmin/authorization.rb', line 25 def includes(*role_names) role_names.each do |role_name| run_role(role_name.to_sym) end end |