Module: Redmine::AccessControl
- Defined in:
- lib/redmine/access_control.rb
Defined Under Namespace
Classes: Mapper, Permission
Class Method Summary
collapse
Class Method Details
.allowed_actions(permission_name) ⇒ Object
Returns the actions that are allowed by the permission of given name
40
41
42
43
|
# File 'lib/redmine/access_control.rb', line 40
def allowed_actions(permission_name)
perm = permission(permission_name)
perm ? perm.actions : []
end
|
.available_project_modules ⇒ Object
57
58
59
|
# File 'lib/redmine/access_control.rb', line 57
def available_project_modules
@available_project_modules ||= @permissions.collect(&:project_module).uniq.compact
end
|
.loggedin_only_permissions ⇒ Object
53
54
55
|
# File 'lib/redmine/access_control.rb', line 53
def loggedin_only_permissions
@loggedin_only_permissions ||= @permissions.select {|p| p.require_loggedin?}
end
|
.map {|mapper| ... } ⇒ Object
22
23
24
25
26
27
|
# File 'lib/redmine/access_control.rb', line 22
def map
mapper = Mapper.new
yield mapper
@permissions ||= []
@permissions += mapper.mapped_permissions
end
|
.members_only_permissions ⇒ Object
49
50
51
|
# File 'lib/redmine/access_control.rb', line 49
def members_only_permissions
@members_only_permissions ||= @permissions.select {|p| p.require_member?}
end
|
.modules_permissions(modules) ⇒ Object
61
62
63
|
# File 'lib/redmine/access_control.rb', line 61
def modules_permissions(modules)
@permissions.select {|p| p.project_module.nil? || modules.include?(p.project_module.to_s)}
end
|
.permission(name) ⇒ Object
Returns the permission of given name or nil if it wasn’t found Argument should be a symbol
35
36
37
|
# File 'lib/redmine/access_control.rb', line 35
def permission(name)
permissions.detect {|p| p.name == name}
end
|
.permissions ⇒ Object
29
30
31
|
# File 'lib/redmine/access_control.rb', line 29
def permissions
@permissions
end
|
.public_permissions ⇒ Object
45
46
47
|
# File 'lib/redmine/access_control.rb', line 45
def public_permissions
@public_permissions ||= @permissions.select {|p| p.public?}
end
|