module Kojac::ModelMethods::ClassMethods

Public Instance Methods

active_model_serializer() click to toggle source
# File lib/kojac/kojac_rails.rb, line 136
def active_model_serializer
        "#{self}Serializer".safe_constantize || KojacBaseSerializer
end
crack_key(aKey) click to toggle source
# File lib/kojac/kojac_rails.rb, line 140
def crack_key(aKey)
        r,id,a = aKey.split_kojac_key
        result = {}
        result[:original] = aKey
        result[:resource] = r if r
        result[:id] = id if id
        result[:association] = a if a
        result
end
create_policy(aCurrentUser,aOp=nil) click to toggle source
# File lib/kojac/kojac_rails.rb, line 132
def create_policy(aCurrentUser,aOp=nil)
        policy_class.new(aCurrentUser,self,aOp)
end
load_by_key(aKey,aOperation=nil) click to toggle source
# File lib/kojac/kojac_rails.rb, line 150
def load_by_key(aKey,aOperation=nil)
        r,id,a = aKey.split_kojac_key
        rel = by_key(aKey)
        if id
                result = rel.first
                result.prepare(aKey,aOperation) if result.respond_to? :prepare
        else
                result = rel.all
                result.each do |item|
                        item.prepare(aKey,aOperation) if item.respond_to? :prepare
                end
        end
        result
end
policy_class() click to toggle source

used by pundit

# File lib/kojac/kojac_rails.rb, line 128
def policy_class
        "#{self}Policy".safe_constantize || KojacBasePolicy
end