From 2fa422578448314fb6fad888b5c47cf994cb0b8c Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Fri, 2 Aug 2013 14:36:38 -0700 Subject: [PATCH] Pass editing params through to welcome page --- app/assets/javascripts/welcome.js | 9 ++++++++- app/controllers/user_controller.rb | 11 +++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/welcome.js b/app/assets/javascripts/welcome.js index 8cf9eb83b..5773bfd6d 100644 --- a/app/assets/javascripts/welcome.js +++ b/app/assets/javascripts/welcome.js @@ -21,7 +21,14 @@ $(document).ready(function() { } }); - $('.start-mapping').attr('href', '/edit?zoom=17&lat=' + params.lat + '&lon=' + params.lon); + params = { + lat: params.lat, + lon: params.lon, + zoom: params.zoom || 17, + editor: params.editor + }; + + $('.start-mapping').attr('href', '/edit?' + $.param(params)); } else if (navigator.geolocation) { $('.edit-geolocated').show(); diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index dfacb9d5a..fdef4ea04 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -88,12 +88,19 @@ class UserController < ApplicationController if @user.save flash[:piwik_goal] = PIWIK_SIGNUP_GOAL if defined?(PIWIK_SIGNUP_GOAL) + begin + referer_params = Rack::Utils.parse_query(URI(session[:referer]).query) + referer = welcome_path(referer_params.slice(:lat, :lon, :zoom, :editor)) + rescue + referer = welcome_path + end + if @user.status == "active" - session[:referer] = welcome_path + session[:referer] = referer successful_login(@user) else session[:token] = @user.tokens.create.token - Notifier.signup_confirm(@user, @user.tokens.create(:referer => welcome_path)).deliver + Notifier.signup_confirm(@user, @user.tokens.create(:referer => referer)).deliver redirect_to :action => 'confirm', :display_name => @user.display_name end else -- 2.43.2