bookstore/app/controllers/sessions_controller.rb
2021-03-22 03:16:29 +01:00

36 lines
729 B
Ruby

# frozen_string_literal: true
# Sessions controller
class SessionsController < ApplicationController
def new; end
def create
@user = User.find_by(email: params[:email])
problem = problem_with_login
if problem
redirect_to '/welcome', notice: problem
else
session[:user_id] = @user.id
redirect_to '/welcome'
end
end
def delete
session.delete(:user_id)
redirect_to '/welcome', notice: 'Logged out properly'
end
def welcome; end
private
def problem_with_login
if !@user
'Wrong email address'
elsif !@user.authenticate(params[:password])
'Wrong password'
elsif @user.blocked?
'You are blocked, please contact support'
end
end
end