Module: AbAdmin::Models::User
Instance Method Summary collapse
- #activate ⇒ Object
- #activate! ⇒ Object
- #active_for_authentication? ⇒ Boolean
- #admin? ⇒ Boolean
- #default? ⇒ Boolean
- #delete! ⇒ Object
- #deleted? ⇒ Boolean
- #full_name ⇒ Object
- #generate_password! ⇒ Object
- #has_role?(role_name) ⇒ Boolean
- #inactive_message ⇒ Object
- #moderator? ⇒ Boolean
- #name ⇒ Object
- #pending? ⇒ Boolean
- #set_default_role ⇒ Object
- #suspend! ⇒ Object
- #trusted? ⇒ Boolean
- #unsuspend! ⇒ Object
Instance Method Details
#activate ⇒ Object
42 43 44 45 |
# File 'lib/ab_admin/models/user.rb', line 42 def activate self.trust_state = ::UserState.active.id self.locked_at = nil end |
#activate! ⇒ Object
47 48 49 50 51 |
# File 'lib/ab_admin/models/user.rb', line 47 def activate! confirm! activate save end |
#active_for_authentication? ⇒ Boolean
93 94 95 |
# File 'lib/ab_admin/models/user.rb', line 93 def active_for_authentication? super && trusted? end |
#admin? ⇒ Boolean
77 78 79 |
# File 'lib/ab_admin/models/user.rb', line 77 def admin? has_role?(:admin) end |
#default? ⇒ Boolean
73 74 75 |
# File 'lib/ab_admin/models/user.rb', line 73 def default? has_role?(:default) end |
#delete! ⇒ Object
57 58 59 |
# File 'lib/ab_admin/models/user.rb', line 57 def delete! self.update_attribute(:trust_state, ::UserState.deleted.id) end |
#deleted? ⇒ Boolean
65 66 67 |
# File 'lib/ab_admin/models/user.rb', line 65 def deleted? trust_state == ::UserState.deleted.id end |
#full_name ⇒ Object
38 39 40 |
# File 'lib/ab_admin/models/user.rb', line 38 def full_name [first_name.presence, last_name.presence].compact.join(' ') end |
#generate_password! ⇒ Object
27 28 29 30 31 32 |
# File 'lib/ab_admin/models/user.rb', line 27 def generate_password! raw_password = Rails.env.test? ? '654321' : Devise.friendly_token[0..7] self.password = self.password_confirmation = raw_password self.save(:validate => false) raw_password end |
#has_role?(role_name) ⇒ Boolean
81 82 83 |
# File 'lib/ab_admin/models/user.rb', line 81 def has_role?(role_name) user_role_type.code == role_name end |
#inactive_message ⇒ Object
97 98 99 |
# File 'lib/ab_admin/models/user.rb', line 97 def trusted? ? super : :unconfirmed end |
#moderator? ⇒ Boolean
69 70 71 |
# File 'lib/ab_admin/models/user.rb', line 69 def moderator? has_role?(:admin) || has_role?(:moderator) end |
#name ⇒ Object
34 35 36 |
# File 'lib/ab_admin/models/user.rb', line 34 def name full_name.strip.presence || email end |
#pending? ⇒ Boolean
85 86 87 |
# File 'lib/ab_admin/models/user.rb', line 85 def pending? trust_state == ::UserState.pending.id end |
#set_default_role ⇒ Object
23 24 25 |
# File 'lib/ab_admin/models/user.rb', line 23 def set_default_role self.user_role_id ||= ::UserRoleType.default.id end |
#suspend! ⇒ Object
53 54 55 |
# File 'lib/ab_admin/models/user.rb', line 53 def suspend! self.update_attribute(:trust_state, ::UserState.suspended.id) end |
#trusted? ⇒ Boolean
89 90 91 |
# File 'lib/ab_admin/models/user.rb', line 89 def trusted? self.trust_state == ::UserState.active.id end |