app/controllers/tramway/auth/web/sign_ups_controller.rb in tramway-auth-1.2 vs app/controllers/tramway/auth/web/sign_ups_controller.rb in tramway-auth-1.2.1

- old
+ new

@@ -2,12 +2,24 @@ before_action :check_authenticable_models def create @form = "#{model_class}SignUpForm".constantize.new model_class.new if @form.submit params[:record] - redirect_to Rails.application.routes.url_helpers.root_path flash: :success + additional_params = { flash: :success } + url = if params[:redirect].present? + [ params[:redirect], '?', additional_params.to_query].join + else + Rails.application.routes.url_helpers.root_path(flash: :success) + end + redirect_to url else - redirect_to Rails.application.routes.url_helpers.root_path flash: :error, errors: @form.errors.messages, record: @form.attributes + additional_params = { flash: :error, errors: @form.errors.messages, record: @form.attributes } + url = if params[:redirect].present? + [ params[:redirect], '?', additional_params.to_query].join + else + Rails.application.routes.url_helpers.root_path(**additional_params) + end + redirect_to url end end private