X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/7bcda2794f144dc2f1715a290a03df79c4010db8..d85887e14698d4c4f03da78dcb78169ad12de297:/app/controllers/user_controller.rb?ds=sidebyside diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index 60b83cc89..fd8fff4dc 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -49,11 +49,11 @@ class UserController < ApplicationController @user.data_public = true @user.save flash[:notice] = 'All your edits are now public' - redirect_to :controller => 'user', :action => 'account' + redirect_to :controller => 'user', :action => 'account', :display_name => @user.display_name end def lost_password - if params[:user][:email] + if params[:user] and params[:user][:email] user = User.find_by_email(params['user']['email']) if user user.token = User.make_token @@ -63,6 +63,8 @@ class UserController < ApplicationController else flash[:notice] = "Couldn't find that email address, sorry." end + else + render :action => 'lost_password' end end @@ -95,7 +97,11 @@ class UserController < ApplicationController u.timeout = 1.day.from_now u.save session[:token] = u.token - redirect_to :controller => 'site', :action => 'index' + if params[:next_controller] and params[:next_action] + redirect_to :controller => params[:next_controller], :action => params[:next_action] + else + redirect_to :controller => 'site', :action => 'index' + end return else flash[:notice] = "Couldn't log in with those details" @@ -113,7 +119,11 @@ class UserController < ApplicationController end end session[:token] = nil - redirect_to :controller => 'site', :action => 'index' + if params[:next_controller] and params[:next_action] + redirect_to :controller => params[:next_controller], :action => params[:next_action] + else + redirect_to :controller => 'site', :action => 'index' + end end def confirm