Commit 571cb4e
Changed files (3)
app
controllers
models
app/controllers/application_controller.rb
@@ -14,7 +14,7 @@ class ApplicationController < ActionController::Base
def current_user
return nil if session[:user_id].blank?
- @current_user ||= User.find(session[:user_id])
+ @current_user ||= User.find_by!(uuid: session[:user_id])
rescue ActiveRecord::RecordNotFound => error
logger.error(error)
nil
app/controllers/sessions_controller.rb
@@ -81,6 +81,6 @@ class SessionsController < ApplicationController
def login(user)
reset_session
- session[:user_id] = user.id
+ session[:user_id] = user.to_param
end
end
app/models/user.rb
@@ -20,23 +20,29 @@ class User < ApplicationRecord
Tfa.new(self)
end
- def self.login(email, password)
- return if email.blank? || password.blank?
-
- user = User.find_by!(email: email)
- user.authenticate(password) ? user : nil
- rescue ActiveRecord::RecordNotFound
- nil
+ def access_token(audience)
+ BearerToken.new.encode(sub: uuid, aud: audience)
end
- def self.authenticate_token(token)
- token = BearerToken.new.decode(token)
- return if token.empty?
- User.find_by(uuid: token[:sub])
+ def to_param
+ uuid
end
- def access_token(audience)
- BearerToken.new.encode(sub: uuid, aud: audience)
+ class << self
+ def login(email, password)
+ return if email.blank? || password.blank?
+
+ user = User.find_by!(email: email)
+ user.authenticate(password) ? user : nil
+ rescue ActiveRecord::RecordNotFound
+ nil
+ end
+
+ def authenticate_token(token)
+ token = BearerToken.new.decode(token)
+ return if token.empty?
+ User.find_by(uuid: token[:sub])
+ end
end
private