diff options
author | Rémy Coutable <remy@rymai.me> | 2018-06-25 11:28:19 +0300 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2018-06-26 10:34:08 +0300 |
commit | c2a48fd163bf9e345ad7baf4707f6bb50de5be78 (patch) | |
tree | 79b0417a273a4a88a3a94e4c75fea1123cf0e74a /app/models | |
parent | 701adc21d6d5e523684ffc8078a4abb6e068e5a3 (diff) |
Ignore unknown OAuth sources in ApplicationSetting
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/application_setting.rb | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/app/models/application_setting.rb b/app/models/application_setting.rb index 3d58a14882f..bddeb8b0352 100644 --- a/app/models/application_setting.rb +++ b/app/models/application_setting.rb @@ -212,14 +212,6 @@ class ApplicationSetting < ActiveRecord::Base end end - validates_each :disabled_oauth_sign_in_sources do |record, attr, value| - value&.each do |source| - unless Devise.omniauth_providers.include?(source.to_sym) - record.errors.add(attr, "'#{source}' is not an OAuth sign-in source") - end - end - end - validate :terms_exist, if: :enforce_terms? before_validation :ensure_uuid! @@ -330,6 +322,11 @@ class ApplicationSetting < ActiveRecord::Base ::Gitlab::Database.cached_column_exists?(:application_settings, :sidekiq_throttling_enabled) end + def disabled_oauth_sign_in_sources=(sources) + sources = (sources || []).map(&:to_s) & Devise.omniauth_providers.map(&:to_s) + super(sources) + end + def domain_whitelist_raw self.domain_whitelist&.join("\n") end |