Sha256: 6215b48fda0d850790ed613f74d461ea47b4915dcb344ca7ba9c62f5eeb3accf

Contents?: true

Size: 559 Bytes

Versions: 3

Compression:

Stored size: 559 Bytes

Contents

module Acl9
  module Helpers
    def self.included(base)
      base.extend ClassMethods
    end

    module ClassMethods
      def access_control(method, opts = {}, &block)
        subject_method = opts.delete(:subject_method) || Acl9::config[:default_subject_method]
        raise ArgumentError, "Block must be supplied to access_control" unless block
      
        generator = Acl9::Dsl::Generators::HelperMethod.new(subject_method, method)
        
        generator.acl_block!(&block)
        generator.install_on(self, opts)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
be9-acl9-0.10.0 lib/acl9/helpers.rb
be9-acl9-0.9.3 lib/acl9/helpers.rb
be9-acl9-0.9.4 lib/acl9/helpers.rb