Make allow_username_or_email_login server specific

parent c832c50c
...@@ -62,8 +62,7 @@ Settings.ldap['active_directory'] = true if Settings.ldap['active_directory'].ni ...@@ -62,8 +62,7 @@ Settings.ldap['active_directory'] = true if Settings.ldap['active_directory'].ni
# backwards compatibility, we only have one host # backwards compatibility, we only have one host
if Settings.ldap['enabled'] || Rails.env.test? if Settings.ldap['enabled'] || Rails.env.test?
if Settings.ldap['host'].present? if Settings.ldap['host'].present?
excluded_per_server_settings = %w(sync_time allow_username_or_email_login) server = Settings.ldap.except('sync_time')
server = Settings.ldap.except(excluded_per_server_settings)
server['label'] = 'LDAP' server['label'] = 'LDAP'
server['provider_id'] = '' #providername will be ldap server['provider_id'] = '' #providername will be ldap
Settings.ldap['servers'] = [server] Settings.ldap['servers'] = [server]
......
...@@ -205,14 +205,13 @@ Devise.setup do |config| ...@@ -205,14 +205,13 @@ Devise.setup do |config|
# end # end
if Gitlab.config.ldap.enabled 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| 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, config.omniauth server.provider_name,
host: server['host'], host: server['host'],
base: server['base'], base: server['base'],
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment