Module: Archipelago::CanCanAdapter
- Defined in:
- lib/archipelago/cancan_adapter.rb
Instance Method Summary collapse
Instance Method Details
#authorize!(action, record) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/archipelago/cancan_adapter.rb', line 5 def (action, record) ability = current_ability unless ability.can?(action, record) raise Archipelago::Forbidden, "not allowed to #{action} this #{record.class}" end record end |
#current_ability ⇒ Object
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/archipelago/cancan_adapter.rb', line 14 def current_ability ability_builder = Archipelago.configuration.current_ability if ability_builder ability_builder.call(current_user) elsif defined?(::Ability) ::Ability.new(current_user) else raise Archipelago::Error, "No ability class configured. Set Archipelago.configuration.current_ability or define an Ability class." end end |