FEATURE: List, revoke and reconnect associated accounts. Phase 1 (#6099)

Listing connections is supported for all built-in auth providers. Revoke and reconnect is currently only implemented for Facebook.
This commit is contained in:
David Taylor
2018-07-23 16:51:57 +01:00
committed by GitHub
parent 32062864d3
commit eda1462b3b
40 changed files with 836 additions and 240 deletions

View File

@ -5,6 +5,7 @@ class DiscoursePluginRegistry
class << self
attr_writer :javascripts
attr_writer :auth_providers
attr_writer :service_workers
attr_writer :admin_javascripts
attr_writer :stylesheets
@ -26,6 +27,10 @@ class DiscoursePluginRegistry
@javascripts ||= Set.new
end
def auth_providers
@auth_providers ||= Set.new
end
def service_workers
@service_workers ||= Set.new
end
@ -87,6 +92,10 @@ class DiscoursePluginRegistry
end
end
def self.register_auth_provider(auth_provider)
self.auth_providers << auth_provider
end
def register_js(filename, options = {})
# If we have a server side option, add that too.
self.class.javascripts << filename
@ -203,6 +212,10 @@ class DiscoursePluginRegistry
self.class.javascripts
end
def auth_providers
self.class.auth_providers
end
def service_workers
self.class.service_workers
end
@ -229,6 +242,7 @@ class DiscoursePluginRegistry
def self.clear
self.javascripts = nil
self.auth_providers = nil
self.service_workers = nil
self.stylesheets = nil
self.mobile_stylesheets = nil
@ -240,6 +254,7 @@ class DiscoursePluginRegistry
def self.reset!
javascripts.clear
auth_providers.clear
service_workers.clear
admin_javascripts.clear
stylesheets.clear