diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index c0628bd9..8b30f130 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -14,4 +14,16 @@ module ApplicationHelper
end
translations[:client]
end
+
+ def omniauth_providers_configured(provider = nil)
+ if provider
+ Rails.configuration.send("omniauth_#{provider}")
+ else
+ providers = []
+ Rails.configuration.providers.each do |provider|
+ providers.push(provider) if Rails.configuration.send("omniauth_#{provider}")
+ end
+ providers
+ end
+ end
end
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index 6acd914f..675de76b 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -32,14 +32,20 @@
<%= t('are_you', name: @user.username) %> |
<%= link_to t('login'), "/auth/#{@user.provider}" %>
<% else %>
-
- <%= t('oauth_signup') %>
-
- <%= link_to('/auth/twitter', :class => "btn icon btn-lg btn-social-icon btn-twitter") do %>
-
+ <% if omniauth_providers_configured.present? %>
+
+ <%= t('oauth_signup') %>
+
<% end %>
- <%= link_to('/auth/google', :class => "btn icon btn-lg btn-social-icon btn-google") do %>
-
+ <% if omniauth_providers_configured(:twitter) %>
+ <%= link_to('/auth/twitter', :class => "btn icon btn-lg btn-social-icon btn-twitter") do %>
+
+ <% end %>
+ <% end %>
+ <% if omniauth_providers_configured(:google) %>
+ <%= link_to('/auth/google', :class => "btn icon btn-lg btn-social-icon btn-google") do %>
+
+ <% end %>
<% end %>
<% end %>
diff --git a/config/initializers/omniauth.rb b/config/initializers/omniauth.rb
index 41726b73..0a6efe2f 100644
--- a/config/initializers/omniauth.rb
+++ b/config/initializers/omniauth.rb
@@ -1,3 +1,9 @@
+Rails.application.config.providers = [:google, :twitter]
+
+Rails.application.config.omniauth_google = ENV['GOOGLE_OAUTH2_ID'].present?
+
+Rails.application.config.omniauth_twitter = ENV['TWITTER_ID'].present?
+
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, ENV['TWITTER_ID'], ENV['TWITTER_SECRET']
provider :google_oauth2, ENV['GOOGLE_OAUTH2_ID'], ENV['GOOGLE_OAUTH2_SECRET'],