diff --git a/plugins/oauth_client/lib/oauth_client_plugin.rb b/plugins/oauth_client/lib/oauth_client_plugin.rb index da10820..a967a1d 100644 --- a/plugins/oauth_client/lib/oauth_client_plugin.rb +++ b/plugins/oauth_client/lib/oauth_client_plugin.rb @@ -63,9 +63,7 @@ class OauthClientPlugin < Noosfero::Plugin environment = domain.environment rescue Environment.default settings = Noosfero::Plugin::Settings.new(environment, OauthClientPlugin) providers = settings.get_setting(:providers) - - strategy.options.client_id = providers[provider][:client_id] - strategy.options.client_secret = providers[provider][:client_secret] + strategy.options.merge!(providers[provider][:options].symbolize_keys) } provider provider, :setup => setup, diff --git a/plugins/oauth_client/lib/omniauth/strategies/noosfero_oauth2.rb b/plugins/oauth_client/lib/omniauth/strategies/noosfero_oauth2.rb index b154d27..433307e 100644 --- a/plugins/oauth_client/lib/omniauth/strategies/noosfero_oauth2.rb +++ b/plugins/oauth_client/lib/omniauth/strategies/noosfero_oauth2.rb @@ -5,17 +5,11 @@ module OmniAuth class NoosferoOauth2 < OmniAuth::Strategies::OAuth2 option :name, :noosfero_oauth2 - option :client_options, { - :site => "http://noosfero.com:3001", - :authorize_url => "/oauth/authorize" - } - uid { raw_info["id"] } info do { :email => raw_info["email"] - # and anything else you want to return to your API consumers } end diff --git a/plugins/oauth_client/views/oauth_client_plugin_admin/_noosfero_oauth2.html.erb b/plugins/oauth_client/views/oauth_client_plugin_admin/_noosfero_oauth2.html.erb new file mode 100644 index 0000000..fec602c --- /dev/null +++ b/plugins/oauth_client/views/oauth_client_plugin_admin/_noosfero_oauth2.html.erb @@ -0,0 +1,6 @@ +<%= options.fields_for :client_options, OpenStruct.new(provider.options[:client_options]) do |c| %> +