Module: Kantox::Strategies::AbilityFactory

Defined in:
lib/kantox/roles/strategies/cancancan.rb

Overview

Ability factory for cancancan.

Class Method Summary collapse

Class Method Details

.lookup(klz, mth) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/kantox/roles/strategies/cancancan.rb', line 15

def lookup klz, mth
  meth = mth.capitalize.gsub(/_./) { |m|
    m[-1].capitalize
  }
  klazz = "#{klz.capitalize}#{meth}Ability"
  if Kantox::Abilities.const_defined? klazz
    Kantox::Abilities.const_get klazz
  else
    Kantox::Helpers.error "Missing ability for «#{self.class.name}##{m}». You should define it explicitly."
  end
end