flash[:matomo_goal] = Settings.matomo["goals"]["signup"] if defined?(Settings.matomo)
- referer = welcome_path
-
- 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],
- "lat" => m[2],
- "lon" => m[3] }.merge(editor))
- end
- rescue StandardError
- # Use default
- end
+ referer = welcome_path(welcome_options)
if current_user.status == "active"
session[:referer] = referer
private
+ def welcome_options
+ uri = URI(session[:referer]) if session[:referer].present?
+
+ return { "oauth_return_url" => uri&.to_s } if uri&.path == oauth_authorization_path
+
+ begin
+ %r{map=(.*)/(.*)/(.*)}.match(uri.fragment) do |m|
+ editor = Rack::Utils.parse_query(uri.query).slice("editor")
+ return { "zoom" => m[1], "lat" => m[2], "lon" => m[3] }.merge(editor)
+ end
+ rescue StandardError
+ # Use default
+ end
+ end
+
##
# ensure that there is a "user" instance variable
def lookup_user_by_name
</div>
<div class='clearfix text-center'>
- <p class="display-5"><a href="<%= edit_path %>" class="button start-mapping"><%= t ".start_mapping" %></a></p>
+ <p class="display-5">
+<% if params[:oauth_return_url] %>
+ <a class="btn btn-primary" href="<%= params[:oauth_return_url] %>"><%= t ".continue_authorization" %></a>
+<% else %>
+ <a class="button btn btn-primary start-mapping" href="<%= edit_path %>"><%= t ".start_mapping" %></a>
+<% end %>
+ </p>
</div>
<div class='alert alert-primary'>
automated_edits: Automated Edits
automated_edits_url: https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_conduct
start_mapping: Start Mapping
+ continue_authorization: Continue Authorization
add_a_note:
title: No Time To Edit? Add a Note!
para_1: |