Files

UbiquoAccessControl::AccessControl

Public Class Methods

included(subject) click to toggle source

(Not documented)

    # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 40
40:     def self.included(subject)
41:       subject.extend(ClassMethods)
42:       if subject.respond_to? :helper_method
43:         subject.helper_method(:permit?)
44:         subject.helper_method(:restrict_to)
45:       end
46:     end

Public Instance Methods

access_context(context = {}) click to toggle source

the current access context; will be created if not setup will add current_ubiquo_user and merge any other elements of context

     # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 108
108:     def access_context(context = {})
109:       r = default_access_context
110:       default_access_context[:params].merge!(context)
111:       r
112:     end
access_handler() click to toggle source

return the active access handler, fallback to RoleHandler implement retrieve_access_handler to return non-default handler

     # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 102
102:     def access_handler
103:       @handler ||= RoleHandler.new
104:     end
default_access_context() click to toggle source

(Not documented)

     # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 114
114:     def default_access_context
115:       @default_access_context ||= {}
116:       @default_access_context[:ubiquo_user] ||= send(:current_ubiquo_user) if respond_to?(:current_ubiquo_user)
117:       @default_access_context[:params] ||= send(:params)
118:       @default_access_context
119:     end
default_access_context=(defaults) click to toggle source

(Not documented)

     # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 121
121:     def default_access_context=(defaults)
122:       @default_access_context = defaults
123:     end
permit?(auth=nil, context = {}) click to toggle source

Returns true if the current user has the permissions in auth auth can be either a single value, an array or nil (See the access_control method for examples of auth values)

     # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 128
128:     def permit?(auth=nil, context = {})
129:       access_handler.process(UbiquoAccessControl::AccessControl::Parser.parse(auth), access_context(context))
130:     end
restrict_to(auth = nil, context = {}) {|if block_given?| ...} click to toggle source

Used to restrict a block to users matching certain permissions Used mainly in views, will return an empty string if the permission is not matched

Example:

  restrict_to "admin" do
    link_to "foo"
  end
     # File vendor/plugins/ubiquo_access_control/lib/ubiquo_access_control/access_control.rb, line 140
140:     def restrict_to(auth = nil, context = {})
141:       result = ''
142:       if permit?(UbiquoAccessControl::AccessControl::Parser.parse(auth), context)
143:         result = yield if block_given?
144:       end
145:       result
146:     end

Disabled; run with $DEBUG to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.