]> git.openstreetmap.org Git - rails.git/blobdiff - lib/auth.rb
Users: avoid calling json.partial! in loop
[rails.git] / lib / auth.rb
index 434994329d7b62a435335dbbeb6da5c3489ee4b5..729772477757ac810113e6abf77a92fead58e904 100644 (file)
@@ -1,9 +1,15 @@
 module Auth
 module Auth
-  PROVIDERS = { "None" => "", "OpenID" => "openid" }.tap do |providers|
-    providers["Google"] = "google" if defined?(GOOGLE_AUTH_ID)
-    providers["Facebook"] = "facebook" if defined?(FACEBOOK_AUTH_ID)
-    providers["Windows Live"] = "windowslive" if defined?(WINDOWSLIVE_AUTH_ID)
-    providers["GitHub"] = "github" if defined?(GITHUB_AUTH_ID)
-    providers["Wikipedia"] = "wikipedia" if defined?(WIKIPEDIA_AUTH_ID)
-  end.freeze
+  @providers = {}
+
+  def self.providers
+    @providers[I18n.locale] ||= {
+      I18n.t("auth.providers.openid") => "openid"
+    }.tap do |providers|
+      providers[I18n.t("auth.providers.google")] = "google" if Settings.key?(:google_auth_id)
+      providers[I18n.t("auth.providers.facebook")] = "facebook" if Settings.key?(:facebook_auth_id)
+      providers[I18n.t("auth.providers.microsoft")] = "microsoft" if Settings.key?(:microsoft_auth_id)
+      providers[I18n.t("auth.providers.github")] = "github" if Settings.key?(:github_auth_id)
+      providers[I18n.t("auth.providers.wikipedia")] = "wikipedia" if Settings.key?(:wikipedia_auth_id)
+    end.freeze
+  end
 end
 end