# File lib/acts_as_filterable.rb, line 37
        def acts_as_filterable(opts = {})
          # Defaults
          write_inheritable_attribute(:visibility_default, opts[:visible] || false)
          write_inheritable_attribute(:acts_as_filterable, true)
         
          Thread.current[:eval_access_control] = true if Thread.current[:eval_access_control] != false
          class_eval do
            once('@raccessAliasReadMethods') {
              alias :old_read_attribute :read_attribute
            }
            extend HipstersInc::Acts::Filterable::SingletonMethods
          end
          include HipstersInc::Acts::Filterable::InstanceMethods
          
          class << self
          
            alias :find_without_access_control :find
            
            def find(*args) #:nodoc:
              result = nil
              ActiveRecord::Base.security_ignore do
                result = find_without_access_control(*args)
              end
              
              #return result if !result.respond_to?(:visible?)
              return nil if result.nil?
              
              if result.kind_of?(Array)
                return result.collect{|row| row if row.visible? || nil}.compact
              else
                if result.visible?
                  return result
                else
                  raise ActiveRecord::RecordNotFound
                  return nil
                end
              end
              return nil
            end
            
          end
        end