From a29d409e20e74c9a4f168c5c45fec9092e03ac61 Mon Sep 17 00:00:00 2001
From: Eugen Rochko <eugen@zeonfederated.com>
Date: Thu, 8 Mar 2018 11:18:26 +0100
Subject: [PATCH] If login redirects to omniauth, redirect logout to root_path
 (#6694)

Fix #6670
---
 app/controllers/auth/sessions_controller.rb | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/app/controllers/auth/sessions_controller.rb b/app/controllers/auth/sessions_controller.rb
index 02447dde0..c1ebe760c 100644
--- a/app/controllers/auth/sessions_controller.rb
+++ b/app/controllers/auth/sessions_controller.rb
@@ -12,10 +12,9 @@ class Auth::SessionsController < Devise::SessionsController
 
   def new
     Devise.omniauth_configs.each do |provider, config|
-      if config.strategy.redirect_at_sign_in
-        return redirect_to(omniauth_authorize_path(resource_name, provider))
-      end
+      return redirect_to(omniauth_authorize_path(resource_name, provider)) if config.strategy.redirect_at_sign_in
     end
+
     super
   end
 
@@ -59,6 +58,14 @@ class Auth::SessionsController < Devise::SessionsController
     end
   end
 
+  def after_sign_out_path_for(_resource_or_scope)
+    Devise.omniauth_configs.each_value do |config|
+      return root_path if config.strategy.redirect_at_sign_in
+    end
+
+    super
+  end
+
   def two_factor_enabled?
     find_user.try(:otp_required_for_login?)
   end