Module: Koi::Controller::RecordsAuthentication

Included in:
Admin::SessionsController, Admin::TokensController
Defined in:
app/controllers/concerns/koi/controller/records_authentication.rb

Instance Method Summary collapse

Instance Method Details

#create_admin_session!(admin_user) ⇒ Object



6
7
8
9
10
11
12
13
14
# File 'app/controllers/concerns/koi/controller/records_authentication.rb', line 6

def create_admin_session!(admin_user)
  admin_user.sessions.create!(
    user_agent: request.user_agent,
    ip_address: request.remote_ip,
  ).tap do |session|
    Koi::Current.session                        = session
    cookies.signed.permanent[:admin_session_id] = { value: session.id, httponly: true, same_site: :lax }
  end
end

#destroy_admin_sessions!(admin_user) ⇒ Object



16
17
18
19
20
21
22
# File 'app/controllers/concerns/koi/controller/records_authentication.rb', line 16

def destroy_admin_sessions!(admin_user)
  admin_user.device_authorizations.destroy_all
  admin_user.sessions.destroy_all

  Koi::Current.session = nil
  cookies.delete(:admin_session_id)
end