mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-26 21:16:06 +10:00
If group has links to ldap servers that are disabled or removed from gitlab config. Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
30 lines
683 B
Ruby
30 lines
683 B
Ruby
class LdapGroupLink < ActiveRecord::Base
|
|
include Gitlab::Access
|
|
belongs_to :group
|
|
|
|
validates :cn, :group_access, :group_id, presence: true
|
|
validates :cn, uniqueness: { scope: [:group_id, :provider] }
|
|
validates :group_access, inclusion: { in: Gitlab::Access.all_values }
|
|
|
|
scope :with_provider, ->(provider) { where(provider: provider) }
|
|
|
|
def access_field
|
|
group_access
|
|
end
|
|
|
|
def config
|
|
Gitlab::LDAP::Config.new(provider)
|
|
rescue Gitlab::LDAP::Config::InvalidProvider
|
|
nil
|
|
end
|
|
|
|
# default to the first LDAP server
|
|
def provider
|
|
read_attribute(:provider) || Gitlab::LDAP::Config.providers.first
|
|
end
|
|
|
|
def provider_label
|
|
config.label
|
|
end
|
|
end
|