class Sinatra::Rider::User

Public Class Methods

authenticate(username, pass) click to toggle source
# File lib/sinatra/rider/user.rb, line 14
def self.authenticate(username, pass)
  user = where(username: username).first
  user if user && user.valid_password?(pass)
end
signup(attrs) click to toggle source
# File lib/sinatra/rider/user.rb, line 6
def self.signup(attrs)
  where(username: attrs[:username]).first_or_initialize.tap do |u|
    u.name = attrs[:name]
    u.password = attrs[:password]
    u.save!
  end
end

Public Instance Methods

password() click to toggle source
# File lib/sinatra/rider/user.rb, line 19
def password
  encrypted_password
end
password=(pass) click to toggle source
# File lib/sinatra/rider/user.rb, line 23
def password=(pass)
  self.encrypted_password = Digest::SHA1.hexdigest(pass)
end
valid_password?(pass) click to toggle source
# File lib/sinatra/rider/user.rb, line 27
def valid_password?(pass)
  encrypted_password == Digest::SHA1.hexdigest(pass)
end