Add an oauth provider path helper.
The helper constructs the path for a given oauth provider since Devise 4.0 deprecated passing the provider to the omniauth authentication path. Fixes #18110.
This commit is contained in:
parent
bbb044e116
commit
e8c6f119cd
5 changed files with 10 additions and 4 deletions
|
@ -101,7 +101,7 @@ class SessionsController < Devise::SessionsController
|
|||
# Prevent alert from popping up on the first page shown after authentication.
|
||||
flash[:alert] = nil
|
||||
|
||||
redirect_to user_omniauth_authorize_path(provider.to_sym)
|
||||
redirect_to provider_path(provider)
|
||||
end
|
||||
|
||||
def valid_otp_attempt?(user)
|
||||
|
|
|
@ -60,6 +60,12 @@ module AuthHelper
|
|||
end
|
||||
end
|
||||
|
||||
# Constructs the OAuth provider path.
|
||||
# For example: user_google_omniauth_authorize_path
|
||||
def provider_path(provider)
|
||||
send("user_#{provider.underscore}_omniauth_authorize_path")
|
||||
end
|
||||
|
||||
def auth_active?(provider)
|
||||
current_user.identities.exists?(provider: provider.to_s)
|
||||
end
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
= form_tag(user_omniauth_authorize_path("crowd"), id: 'new_crowd_user' ) do
|
||||
= form_tag(provider_path("crowd"), id: 'new_crowd_user' ) do
|
||||
= text_field_tag :username, nil, {class: "form-control top", placeholder: "Username", autofocus: "autofocus"}
|
||||
= password_field_tag :password, nil, {class: "form-control bottom", placeholder: "Password"}
|
||||
- if devise_mapping.rememberable?
|
||||
|
|
|
@ -5,4 +5,4 @@
|
|||
- providers.each do |provider|
|
||||
%span.light
|
||||
- has_icon = provider_has_icon?(provider)
|
||||
= link_to provider_image_tag(provider), user_omniauth_authorize_path(provider), method: :post, class: (has_icon ? 'oauth-image-link' : 'btn'), "data-no-turbolink" => "true"
|
||||
= link_to provider_image_tag(provider), provider_path(provider), method: :post, class: (has_icon ? 'oauth-image-link' : 'btn'), "data-no-turbolink" => "true"
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
= link_to unlink_profile_account_path(provider: provider), method: :delete, class: 'provider-btn' do
|
||||
Disconnect
|
||||
- else
|
||||
= link_to user_omniauth_authorize_path(provider), method: :post, class: 'provider-btn not-active', "data-no-turbolink" => "true" do
|
||||
= link_to provider_path(provider), method: :post, class: 'provider-btn not-active', "data-no-turbolink" => "true" do
|
||||
Connect
|
||||
%hr
|
||||
- if current_user.can_change_username?
|
||||
|
|
Loading…
Reference in a new issue