Class: CognitoIdpRails::SessionsController

Inherits:
ApplicationController show all
Defined in:
app/controllers/cognito_idp_rails/sessions_controller.rb

Instance Method Summary collapse

Instance Method Details

#loginObject



7
8
9
# File 'app/controllers/cognito_idp_rails/sessions_controller.rb', line 7

def 
  redirect_to authorization_url, allow_other_host: true
end

#login_callbackObject



11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/controllers/cognito_idp_rails/sessions_controller.rb', line 11

def 
  verifier = session.delete(:code_verifier)
  session.delete(:login_state)
  token = client.get_token(grant_type: :authorization_code, code: params[:code], redirect_uri: , code_verifier: verifier)
   = client.(token)
  reset_session
  configuration..call(token, , request)
  redirect_to configuration., notice: I18n.t("cognito_idp_rails.sessions.login_success")
rescue CognitoIdp::Error => e
  configuration..call(e, request)
  redirect_to configuration., notice: I18n.t("cognito_idp_rails.sessions.login_failed")
end

#logoutObject



24
25
26
# File 'app/controllers/cognito_idp_rails/sessions_controller.rb', line 24

def logout
  redirect_to client.logout_uri(logout_uri: auth_logout_callback_url), allow_other_host: true
end

#logout_callbackObject



28
29
30
31
32
# File 'app/controllers/cognito_idp_rails/sessions_controller.rb', line 28

def logout_callback
  configuration.before_logout.call(request)
  reset_session
  redirect_to configuration.after_logout_route, notice: I18n.t("cognito_idp_rails.sessions.logout_success")
end