Feature: Introduce Super Admins (#705)
* Feature: Introduce Super Admins - added new devise model for super user - added administrate gem - sample dashboards for users and accounts Co-authored-by: Pranav Raj Sreepuram <pranavrajs@gmail.com>
This commit is contained in:
28
app/controllers/super_admin/devise/sessions_controller.rb
Normal file
28
app/controllers/super_admin/devise/sessions_controller.rb
Normal file
@@ -0,0 +1,28 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class SuperAdmin::Devise::SessionsController < Devise::SessionsController
|
||||
def new
|
||||
self.resource = resource_class.new(sign_in_params)
|
||||
end
|
||||
|
||||
def create
|
||||
return unless valid_credentials?
|
||||
|
||||
sign_in(@super_admin, scope: :super_admin)
|
||||
flash.discard
|
||||
redirect_to super_admin_users_path
|
||||
end
|
||||
|
||||
def destroy
|
||||
sign_out
|
||||
flash.discard
|
||||
redirect_to '/'
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def valid_credentials?
|
||||
@super_admin = SuperAdmin.find_by!(email: params[:super_admin][:email])
|
||||
@super_admin.valid_password?(params[:super_admin][:password])
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user