Module: Forcast::Model::Login

Includes:
BCrypt
Defined in:
lib/forcast/models/login/login.rb

Instance Method Summary collapse

Instance Method Details

#generate_auth_tokenObject



7
8
9
10
11
# File 'lib/forcast/models/login/login.rb', line 7

def generate_auth_token
 token = SecureRandom.hex
 self.update_columns(auth_token: token, token_created_at: Time.zone.now)
 return token
end

#invalidate_auth_tokenObject



13
14
15
# File 'lib/forcast/models/login/login.rb', line 13

def invalidate_auth_token
  self.update_columns(auth_token: nil, token_created_at: nil)
end

#is_password?(password) ⇒ Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/forcast/models/login/login.rb', line 21

def is_password?(password)
  BCrypt::Password.new(self.password_hash) == password
end

#password=(password) ⇒ Object



17
18
19
# File 'lib/forcast/models/login/login.rb', line 17

def password=(password)
  self.password_hash = BCrypt::Password.create(password)
end