sample_rails_tailwind/app/controllers/sessions_controller.rb

26 lines
674 B
Ruby
Raw Normal View History

2025-01-01 15:44:50 +08:00
class SessionsController < ApplicationController
include SessionsHelper
def new
end
def create
user = User.find_by(email: params[:session][:email].downcase)
# if user && user.authenticate(params[:session][:password])
if user&.authenticate(params[:session][:password])
forwarding_url = session[:forwarding_url]
2025-01-01 15:44:50 +08:00
reset_session
params[:session][:remember_me] == '1' ? remember(user) : forget(user)
2025-01-01 15:44:50 +08:00
log_in user
redirect_to forwarding_url || user
2025-01-01 15:44:50 +08:00
else
flash.now[:danger] = 'Invalid email/password combination'
render 'new'
end
end
def destroy
log_out if logged_in?
redirect_to root_url
2025-01-01 15:44:50 +08:00
end
end