class Recurso::Config
Constants
- DEFAULT_IDENTITY_FOREIGN_KEY
- DEFAULT_PERMISSION_CLASS_NAME
Attributes
actions_for_default[RW]
default_level[RW]
default_permission_class_name[RW]
global_relations[RW]
identity_foreign_key[RW]
levels[RW]
levels_for_action[RW]
permission_class_name[RW]
Public Class Methods
new()
click to toggle source
# File lib/recurso/config.rb, line 18 def initialize @levels_for_action = { view: [:admin, :editor, :viewer], modify: [:admin, :editor], administer: [:admin], } @actions_for_default = { open: [:view, :modify], closed: [:view], secret: [], } @levels = [:member, :admin, :editor, :viewer] @default_level = :member @identity_foreign_key = DEFAULT_IDENTITY_FOREIGN_KEY @permission_class_name = DEFAULT_PERMISSION_CLASS_NAME @global_relations = [] end
Public Instance Methods
identity_foreign_key_for(model)
click to toggle source
# File lib/recurso/config.rb, line 50 def identity_foreign_key_for(model) model_specific(identity_foreign_key, model) || DEFAULT_IDENTITY_FOREIGN_KEY end
model_specific(value, model)
click to toggle source
# File lib/recurso/config.rb, line 42 def model_specific(value, model) if value.respond_to?(:call) value.call(model) else value end end
permission_class_name_for(identity_model)
click to toggle source
# File lib/recurso/config.rb, line 54 def permission_class_name_for(identity_model) model_specific(permission_class_name, identity_model) || DEFAULT_PERMISSION_CLASS_NAME end