More extension points for login buttons, used by OAuth2 plugin

This commit is contained in:
Robin Ward
2015-09-25 11:29:05 -04:00
parent 64598ceaba
commit c4b1b848bc
4 changed files with 39 additions and 15 deletions

View File

@ -218,13 +218,8 @@ class Plugin::Instance
js = javascripts.join("\n")
auth_providers.each do |auth|
overrides = ""
overrides = ", titleOverride: '#{auth.title}'" if auth.title
overrides << ", messageOverride: '#{auth.message}'" if auth.message
overrides << ", frameWidth: '#{auth.frame_width}'" if auth.frame_width
overrides << ", frameHeight: '#{auth.frame_height}'" if auth.frame_height
js << "Discourse.LoginMethod.register(Discourse.LoginMethod.create({name: '#{auth.name}'#{overrides}}));\n"
js << "Discourse.LoginMethod.register(Discourse.LoginMethod.create(#{auth.to_json}));\n"
if auth.glyph
css << ".btn-social.#{auth.name}:before{ content: '#{auth.glyph}'; }\n"
@ -305,7 +300,8 @@ class Plugin::Instance
def auth_provider(opts)
provider = Plugin::AuthProvider.new
[:glyph, :background_color, :title, :message, :frame_width, :frame_height, :authenticator].each do |sym|
Plugin::AuthProvider.auth_attributes.each do |sym|
provider.send "#{sym}=", opts.delete(sym)
end
auth_providers << provider