module Wooster

Constants

FieldPermissions
RecordPermissions
VERSION

Public Class Methods

any_permission?(permissions, object) click to toggle source
# File lib/wooster/base.rb, line 21
def self.any_permission?(permissions, object)
  permissions.any?{|func|  Wooster.controller_exec(func,object)}  
end
controller_exec(block, *args) click to toggle source
# File lib/wooster/base.rb, line 18
def self.controller_exec(block, *args)
  Thread.current[:wooster_controller].instance_exec *args,&block
end
init_policy(klass) click to toggle source
# File lib/wooster/base.rb, line 4
def self.init_policy(klass)
  if klass.class_variable_defined? :@@wooster_field
   raise RuntimeError
  end
  klass.cattr_accessor :wooster_records
  klass.cattr_accessor :wooster_field
  x = Hash.new
  x.default_proc = Proc.new do |hash, key|
    hash[key] = FieldPermissions.new([],[])
  end
  klass.wooster_records = RecordPermissions.new([],[],[],[])
  klass.wooster_field = x
end