about summary refs log tree commit diff
path: root/app/controllers/auth/confirmations_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/auth/confirmations_controller.rb')
-rw-r--r--app/controllers/auth/confirmations_controller.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/app/controllers/auth/confirmations_controller.rb b/app/controllers/auth/confirmations_controller.rb
index 2954c34da..eade82e36 100644
--- a/app/controllers/auth/confirmations_controller.rb
+++ b/app/controllers/auth/confirmations_controller.rb
@@ -7,9 +7,9 @@ class Auth::ConfirmationsController < Devise::ConfirmationsController
   before_action :set_user, only: [:finish_signup]
   before_action :set_pack
 
-  # GET/PATCH /users/:id/finish_signup
   def finish_signup
     return unless request.patch? && params[:user]
+
     if @user.update(user_params)
       @user.skip_reconfirmation!
       bypass_sign_in(@user)
@@ -36,4 +36,12 @@ class Auth::ConfirmationsController < Devise::ConfirmationsController
   def user_params
     params.require(:user).permit(:email)
   end
+
+  def after_confirmation_path_for(_resource_name, user)
+    if user.created_by_application && truthy_param?(:redirect_to_app)
+      user.created_by_application.redirect_uri
+    else
+      super
+    end
+  end
 end