Class: Boxroom::User
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Boxroom::User
- Defined in:
- app/models/boxroom/user.rb
Instance Attribute Summary collapse
-
#dont_clear_reset_password_token ⇒ Object
Returns the value of attribute dont_clear_reset_password_token.
-
#password_confirmation ⇒ Object
Returns the value of attribute password_confirmation.
-
#password_required ⇒ Object
Returns the value of attribute password_required.
Class Method Summary collapse
Instance Method Summary collapse
- #forget_me ⇒ Object
- #member_of_admins? ⇒ Boolean
- #name_is_blank? ⇒ Boolean
- #password ⇒ Object
- #password=(new_password) ⇒ Object
- #refresh_remember_token ⇒ Object
- #refresh_reset_password_token ⇒ Object
Instance Attribute Details
#dont_clear_reset_password_token ⇒ Object
Returns the value of attribute dont_clear_reset_password_token.
6 7 8 |
# File 'app/models/boxroom/user.rb', line 6 def dont_clear_reset_password_token @dont_clear_reset_password_token end |
#password_confirmation ⇒ Object
Returns the value of attribute password_confirmation.
6 7 8 |
# File 'app/models/boxroom/user.rb', line 6 def password_confirmation @password_confirmation end |
#password_required ⇒ Object
Returns the value of attribute password_required.
6 7 8 |
# File 'app/models/boxroom/user.rb', line 6 def password_required @password_required end |
Class Method Details
.authenticate(name, password) ⇒ Object
74 75 76 77 78 79 |
# File 'app/models/boxroom/user.rb', line 74 def self.authenticate(name, password) return nil if name.blank? || password.blank? user = find_by_name(name) or return nil hash = Digest::SHA256.hexdigest(user.password_salt + password) hash == user.hashed_password ? user : nil end |
.no_admin_yet? ⇒ Boolean
81 82 83 |
# File 'app/models/boxroom/user.rb', line 81 def self.no_admin_yet? find_by_is_admin(true).blank? end |
Instance Method Details
#forget_me ⇒ Object
65 66 67 68 |
# File 'app/models/boxroom/user.rb', line 65 def forget_me self.remember_token = nil save(:validate => false) end |
#member_of_admins? ⇒ Boolean
49 50 51 |
# File 'app/models/boxroom/user.rb', line 49 def member_of_admins? groups.admins_group.present? end |
#name_is_blank? ⇒ Boolean
70 71 72 |
# File 'app/models/boxroom/user.rb', line 70 def name_is_blank? self.name.blank? end |
#password ⇒ Object
36 37 38 |
# File 'app/models/boxroom/user.rb', line 36 def password @password end |
#password=(new_password) ⇒ Object
40 41 42 43 44 45 46 47 |
# File 'app/models/boxroom/user.rb', line 40 def password=(new_password) @password = new_password unless @password.blank? self.password_salt = SecureRandom.base64(32) self.hashed_password = Digest::SHA256.hexdigest(password_salt + password) end end |
#refresh_remember_token ⇒ Object
60 61 62 63 |
# File 'app/models/boxroom/user.rb', line 60 def refresh_remember_token self.remember_token = SecureRandom.base64(32) save(:validate => false) end |
#refresh_reset_password_token ⇒ Object
53 54 55 56 57 58 |
# File 'app/models/boxroom/user.rb', line 53 def refresh_reset_password_token self.reset_password_token = SecureRandom.hex(10) self.reset_password_token_expires_at = 1.hour.from_now self.dont_clear_reset_password_token = true save(:validate => false) end |