diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb index 8993d8c9a..6e906f0d9 100644 --- a/app/controllers/sessions_controller.rb +++ b/app/controllers/sessions_controller.rb @@ -17,7 +17,7 @@ class SessionsController < ApplicationController def destroy terminate_session - redirect_to_login_url + redirect_to_logout_url end private diff --git a/app/helpers/login_helper.rb b/app/helpers/login_helper.rb index 717ed3711..483c1a31c 100644 --- a/app/helpers/login_helper.rb +++ b/app/helpers/login_helper.rb @@ -11,7 +11,19 @@ module LoginHelper end end + def logout_url + if Rails.application.config.x.local_authentication + new_session_path + else + Launchpad.logout_url + end + end + def redirect_to_login_url redirect_to login_url, allow_other_host: true end + + def redirect_to_logout_url + redirect_to logout_url, allow_other_host: true + end end diff --git a/app/models/launchpad.rb b/app/models/launchpad.rb index 6001dac82..4074b4daf 100644 --- a/app/models/launchpad.rb +++ b/app/models/launchpad.rb @@ -8,6 +8,10 @@ module Launchpad url product_account_path("/signin", product: product, account: account), params end + def logout_url + url "/signout" + end + def authentication_url(**params) url "/authenticate", params.merge(product: :fizzy) end diff --git a/test/controllers/sessions_controller_test.rb b/test/controllers/sessions_controller_test.rb index 0cfadb01f..6613488d4 100644 --- a/test/controllers/sessions_controller_test.rb +++ b/test/controllers/sessions_controller_test.rb @@ -6,7 +6,7 @@ class SessionsControllerTest < ActionDispatch::IntegrationTest delete session_path - assert_redirected_to Launchpad.login_url(account: Account.sole) + assert_redirected_to Launchpad.logout_url assert_not cookies[:session_token].present? end