class ActiveAdmin::CanCanAdapter

def authorized?(action, subject = nil)

def authorized?(action, subject = nil)
  cancan_ability.can?(action, subject)
end

def cancan_ability

def cancan_ability
  @cancan_ability ||= initialize_cancan_ability
end

def initialize_cancan_ability

def initialize_cancan_ability
  klass = resource.namespace.cancan_ability_class
  klass = klass.constantize if klass.is_a? String
  klass.new user
end

def scope_collection(collection, action = ActiveAdmin::Auth::READ)

def scope_collection(collection, action = ActiveAdmin::Auth::READ)
  collection.accessible_by(cancan_ability, action)
end