Module: Typus::Orm::ActiveRecord::User::InstanceMethods
- Defined in:
- lib/typus/orm/active_record/user/instance_methods.rb
Instance Method Summary collapse
- #active? ⇒ Boolean
- #application(name) ⇒ Object
- #applications ⇒ Object
- #can?(action, resource, options = {}) ⇒ Boolean
- #cannot?(*args) ⇒ Boolean
- #is_not_root? ⇒ Boolean
- #is_root? ⇒ Boolean
- #locale ⇒ Object
- #locale=(locale) ⇒ Object
- #models ⇒ Object
- #owns?(resource) ⇒ Boolean
- #resources ⇒ Object
- #to_label ⇒ Object
Instance Method Details
#active? ⇒ Boolean
50 51 52 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 50 def active? status && Typus::Configuration.roles.has_key?(role) end |
#application(name) ⇒ Object
23 24 25 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 23 def application(name) Typus.application(name).delete_if { |r| !resources.keys.include?(r) } end |
#applications ⇒ Object
19 20 21 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 19 def applications Typus.applications.delete_if { |a| application(a).empty? } end |
#can?(action, resource, options = {}) ⇒ Boolean
27 28 29 30 31 32 33 34 35 36 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 27 def can?(action, resource, = {}) resource = resource.model_name if resource.is_a?(Class) return false if !resources.include?(resource) return true if resources[resource].include?("all") action = [:special] ? action : action.acl_action_mapper resources[resource].extract_settings.include?(action) end |
#cannot?(*args) ⇒ Boolean
38 39 40 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 38 def cannot?(*args) !can?(*args) end |
#is_not_root? ⇒ Boolean
46 47 48 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 46 def is_not_root? !is_root? end |
#is_root? ⇒ Boolean
42 43 44 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 42 def is_root? role == Typus.master_role end |
#locale ⇒ Object
54 55 56 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 54 def locale (preferences && preferences[:locale]) ? preferences[:locale] : ::I18n.default_locale end |
#locale=(locale) ⇒ Object
58 59 60 61 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 58 def locale=(locale) self.preferences ||= {} self.preferences[:locale] = locale end |
#models ⇒ Object
15 16 17 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 15 def models Typus.models.delete_if { |m| cannot?('read', m) } end |
#owns?(resource) ⇒ Boolean
63 64 65 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 63 def owns?(resource) id == resource.send(Typus.user_foreign_key) end |
#resources ⇒ Object
11 12 13 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 11 def resources Typus::Configuration.roles[role.to_s].compact end |
#to_label ⇒ Object
7 8 9 |
# File 'lib/typus/orm/active_record/user/instance_methods.rb', line 7 def to_label email end |