Use standard Devise sessions controller in admin area

Fixes a bug when retrying to login with correct credentials
This commit is contained in:
Artur Beljajev 2018-07-18 20:02:05 +03:00
parent a2451f4a13
commit 5561825584
8 changed files with 88 additions and 47 deletions

View file

@ -1,27 +1,5 @@
module Admin
class SessionsController < Devise::SessionsController
def new
@admin_user = AdminUser.new
end
def create
if params[:admin_user].blank?
@admin_user = AdminUser.new
flash[:alert] = 'Something went wrong'
return render :new
end
@admin_user = AdminUser.find_by(username: params[:admin_user][:username])
@admin_user ||= AdminUser.new(username: params[:admin_user][:username])
if @admin_user.valid_password?(params[:admin_user][:password])
sign_in_and_redirect(:admin_user, @admin_user, event: :authentication)
else
flash[:alert] = 'Authorization error'
render :new
end
end
private
def after_sign_in_path_for(_resource_or_scope)