mirror of
https://github.com/discourse/discourse.git
synced 2024-12-24 13:13:59 +08:00
9e31135eca
LinkedIn has grandfathered its old OAuth2 provider. This can only be used by existing apps. New apps have to use the new OIDC provider. This PR adds a linkedin_oidc provider to core. This will exist alongside the discourse-linkedin-auth plugin, which will be kept for those still using the deprecated provider.
24 lines
490 B
Ruby
24 lines
490 B
Ruby
# frozen_string_literal: true
|
|
|
|
class LinkedinOidcCredentialsValidator
|
|
def initialize(opts = {})
|
|
@opts = opts
|
|
end
|
|
|
|
def valid_value?(val)
|
|
return true if val == "f"
|
|
return false if credentials_missing?
|
|
true
|
|
end
|
|
|
|
def error_message
|
|
I18n.t("site_settings.errors.linkedin_oidc_credentials") if credentials_missing?
|
|
end
|
|
|
|
private
|
|
|
|
def credentials_missing?
|
|
SiteSetting.linkedin_oidc_client_id.blank? || SiteSetting.linkedin_oidc_client_secret.blank?
|
|
end
|
|
end
|