Module: NavigationPermissions
- Extended by:
- ActiveSupport::Concern
- Included in:
- NavigationGroup, NavigationHeader, NavigationItem
- Defined in:
- app/models/concerns/navigation_permissions.rb
Instance Method Summary collapse
- #allow!(controller, action) ⇒ Object
- #allowed_to ⇒ Object
- #allows?(controller, action) ⇒ Boolean
- #disallow!(controller, action) ⇒ Object
Instance Method Details
#allow!(controller, action) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'app/models/concerns/navigation_permissions.rb', line 8 def allow!(controller, action) = NavigationRecordPermission.find_or_initialize_by( controller: controller, action: action ) if .new_record? .save! << else << unless .include?() end end |
#allowed_to ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'app/models/concerns/navigation_permissions.rb', line 30 def allowed_to .map do || { controller: .controller, action: .action } end end |
#allows?(controller, action) ⇒ Boolean
4 5 6 |
# File 'app/models/concerns/navigation_permissions.rb', line 4 def allows?(controller, action) .exists?(controller: controller, action: action) end |
#disallow!(controller, action) ⇒ Object
25 26 27 28 |
# File 'app/models/concerns/navigation_permissions.rb', line 25 def disallow!(controller, action) = .find_by(controller: controller, action: action) .delete() if end |