Browse Source

Fix crash when external auth provider has no display_name set (#19962)

Fixes #19913
closed-social-glitch-2
Claire 2 years ago
committed by GitHub
parent
commit
1e1289b024
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 1 deletions
  1. +2
    -1
      app/controllers/auth/omniauth_callbacks_controller.rb

+ 2
- 1
app/controllers/auth/omniauth_callbacks_controller.rb View File

@ -18,7 +18,8 @@ class Auth::OmniauthCallbacksController < Devise::OmniauthCallbacksController
)
sign_in_and_redirect @user, event: :authentication
set_flash_message(:notice, :success, kind: Devise.omniauth_configs[provider].strategy.display_name.capitalize) if is_navigational_format?
label = Devise.omniauth_configs[provider]&.strategy&.display_name.presence || I18n.t("auth.providers.#{provider}", default: provider.to_s.chomp('_oauth2').capitalize)
set_flash_message(:notice, :success, kind: label) if is_navigational_format?
else
session["devise.#{provider}_data"] = request.env['omniauth.auth']
redirect_to new_user_registration_url

Loading…
Cancel
Save