about summary refs log tree commit diff
path: root/app/controllers/oauth
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2018-09-11 16:51:26 +0200
committerThibaut Girka <thib@sitedethib.com>2018-09-11 16:51:26 +0200
commitcd99255698354f3b5ec1c0d5d9bc1b4fb9bffdf3 (patch)
tree0486b73191a98645e0620fefe8743f4a0c44bef5 /app/controllers/oauth
parent65f625cf237feb55a21495606d5e2c258bbe50cc (diff)
parentbda0f7ac7353a63b42ca99b2e7d4e80a3b03b850 (diff)
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
	app/controllers/oauth/authorizations_controller.rb

Just two changes being too close to one another.
Took both.
Diffstat (limited to 'app/controllers/oauth')
-rw-r--r--app/controllers/oauth/authorizations_controller.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/app/controllers/oauth/authorizations_controller.rb b/app/controllers/oauth/authorizations_controller.rb
index eb977510b..f6f5d1ecc 100644
--- a/app/controllers/oauth/authorizations_controller.rb
+++ b/app/controllers/oauth/authorizations_controller.rb
@@ -18,4 +18,18 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
   def set_pack
     use_pack 'auth'
   end
+
+  def render_success
+    if skip_authorization? || (matching_token? && !truthy_param?('force_login'))
+      redirect_or_render authorize_response
+    elsif Doorkeeper.configuration.api_only
+      render json: pre_auth
+    else
+      render :new
+    end
+  end
+
+  def truthy_param?(key)
+    ActiveModel::Type::Boolean.new.cast(params[key])
+  end
 end