diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 36c9f4e22..6db39d2d0 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -199,8 +199,9 @@ class UsersController < ApplicationController referer = welcome_path + uri = URI(session[:referer]) if session[:referer].present? + begin - uri = URI(session[:referer]) %r{map=(.*)/(.*)/(.*)}.match(uri.fragment) do |m| editor = Rack::Utils.parse_query(uri.query).slice("editor") referer = welcome_path({ "zoom" => m[1], @@ -212,6 +213,7 @@ class UsersController < ApplicationController end if current_user.status == "active" + referer = welcome_path({"oauth_return_url" => uri.to_s}) if uri&.path == oauth_authorization_path session[:referer] = referer successful_login(current_user) else diff --git a/app/views/site/welcome.html.erb b/app/views/site/welcome.html.erb index b05620f59..8ec32ea9c 100644 --- a/app/views/site/welcome.html.erb +++ b/app/views/site/welcome.html.erb @@ -60,7 +60,13 @@
+<% if params[:oauth_return_url] %> + <%= t ".continue_authorization" %> +<% else %> + <%= t ".start_mapping" %> +<% end %> +