Sha256: 18687828b107a0810d50aedf97567ac57c98820aad795514b2cc3e41b72dff53

Contents?: true

Size: 613 Bytes

Versions: 2

Compression:

Stored size: 613 Bytes

Contents

class User < ActiveRecord::Base
  has_secure_password
  
  validates_presence_of :password, on: :create

  before_create { generate_token(:auth_token) }
  
  def self.authenticate(email, password)
    user = find_by email: email
    user if user && user.authenticate(password)
  end
    
  def generate_token(column)
    begin
      self[column] = SecureRandom.urlsafe_base64
    end while User.exists?(column => self[column])
  end

  def send_password_reset
    generate_token(:password_reset_token)
    self.password_reset_sent_at = Time.zone.now
    save!
    UserMailer.password_reset(self).deliver
  end
end

Version data entries

2 entries across 1 versions & 1 rubygems

Version Path
authpro-0.1.0 lib/generators/authpro/templates/user.rb
authpro-0.1.0 test/rails/dummy/app/models/user.rb