From: Tom Hughes Date: Fri, 30 Sep 2011 11:02:15 +0000 (+0100) Subject: Get OAuth working, including a hack for Potlatch X-Git-Tag: live~6053 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/96c22b169ad889034040ad4819410670ad66da4f?ds=sidebyside Get OAuth working, including a hack for Potlatch --- diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index b9f98071c..2d137cc41 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -106,9 +106,7 @@ class ApplicationController < ActionController::Base # is optional. def setup_user_auth # try and setup using OAuth - if Authenticator.new(self, [:token]).allow? - @user = current_token.user - else + if not Authenticator.new(self, [:token]).allow? username, passwd = get_auth_data # parse from headers # authenticate per-scheme if username.nil? @@ -358,6 +356,11 @@ private return [user, pass] end + # used by oauth plugin to set the current user + def current_user=(user) + @user=user + end + # override to stop oauth plugin sending errors def invalid_oauth_response end diff --git a/config/initializers/oauth.rb b/config/initializers/oauth.rb new file mode 100644 index 000000000..56dd9ff25 --- /dev/null +++ b/config/initializers/oauth.rb @@ -0,0 +1,11 @@ +require 'oauth/rack/oauth_filter' + +Rails.configuration.middleware.use OAuth::Rack::OAuthFilter + +module OAuth::RequestProxy + class RackRequest + def method + request.request_method + end + end +end