Class: Sevn::RulesPack
- Inherits:
-
Object
- Object
- Sevn::RulesPack
- Defined in:
- lib/sevn/rules_pack.rb
Instance Method Summary collapse
- #abilities(object, subject) ⇒ Object
- #action_aliases ⇒ Object
- #allowed?(object, action, subject) ⇒ Boolean
- #general_abilities ⇒ Object
-
#initialize ⇒ RulesPack
constructor
A new instance of RulesPack.
Constructor Details
#initialize ⇒ RulesPack
Returns a new instance of RulesPack.
3 4 5 6 7 8 |
# File 'lib/sevn/rules_pack.rb', line 3 def initialize @allowed_abilities = general_abilities @scoped_abilities = Hash.new { |hash, key| hash[key] = Sevn::Constants::EMPTY_ARRAY } @aliases = Sevn::Constants::DEFAULT_ALIASES.merge(action_aliases) abilities_check(@allowed_abilities) end |
Instance Method Details
#abilities(object, subject) ⇒ Object
20 21 22 |
# File 'lib/sevn/rules_pack.rb', line 20 def abilities(object, subject) Sevn::Constants::EMPTY_ARRAY end |
#action_aliases ⇒ Object
24 25 26 |
# File 'lib/sevn/rules_pack.rb', line 24 def action_aliases Sevn::Constants::EMPTY_HASH end |
#allowed?(object, action, subject) ⇒ Boolean
10 11 12 13 14 |
# File 'lib/sevn/rules_pack.rb', line 10 def allowed?(object, action, subject) @allowed_abilities.include?(action) || @scoped_abilities[scoped_abilities_key(object, subject)].include?(action) || prepare_and_check_scoped_abilities(object, action, subject) end |
#general_abilities ⇒ Object
16 17 18 |
# File 'lib/sevn/rules_pack.rb', line 16 def general_abilities Sevn::Constants::EMPTY_ARRAY end |