From 1835fceb4bc9d548ace7ab0683a6b1ffd014285a Mon Sep 17 00:00:00 2001 From: Jan-Willem van der Meer Date: Fri, 10 Oct 2014 09:40:31 +0200 Subject: [PATCH] Make allow_username_or_email_login server specific --- config/initializers/1_settings.rb | 3 +-- config/initializers/devise.rb | 13 ++++++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb index 4ac53c26ba..abab32265d 100644 --- a/config/initializers/1_settings.rb +++ b/config/initializers/1_settings.rb @@ -62,8 +62,7 @@ Settings.ldap['active_directory'] = true if Settings.ldap['active_directory'].ni # backwards compatibility, we only have one host if Settings.ldap['enabled'] || Rails.env.test? if Settings.ldap['host'].present? - excluded_per_server_settings = %w(sync_time allow_username_or_email_login) - server = Settings.ldap.except(excluded_per_server_settings) + server = Settings.ldap.except('sync_time') server['label'] = 'LDAP' server['provider_id'] = '' #providername will be ldap Settings.ldap['servers'] = [server] diff --git a/config/initializers/devise.rb b/config/initializers/devise.rb index 22d4bf68dd..7770f018a1 100644 --- a/config/initializers/devise.rb +++ b/config/initializers/devise.rb @@ -205,14 +205,13 @@ Devise.setup do |config| # end if Gitlab.config.ldap.enabled - # TODO: make server specific - if Gitlab.config.ldap.allow_username_or_email_login - email_stripping_proc = ->(name) {name.gsub(/@.*$/,'')} - else - email_stripping_proc = ->(name) {name} - end - Gitlab.config.ldap.servers.each do |server| + if server['allow_username_or_email_login'] + email_stripping_proc = ->(name) {name.gsub(/@.*$/,'')} + else + email_stripping_proc = ->(name) {name} + end + config.omniauth server.provider_name, host: server['host'], base: server['base'],