X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/98bfaace9aeba7fb387596cc16b2e661506173c6..79c306ad06155549ff6e5929ff20a1149b4862c4:/app/controllers/concerns/user_methods.rb diff --git a/app/controllers/concerns/user_methods.rb b/app/controllers/concerns/user_methods.rb index eb7d38988..d79ed48d2 100644 --- a/app/controllers/concerns/user_methods.rb +++ b/app/controllers/concerns/user_methods.rb @@ -6,9 +6,10 @@ module UserMethods ## # ensure that there is a "user" instance variable def lookup_user - @user = User.active.find_by!(:display_name => params[:display_name]) + display_name = params[:display_name] || params[:user_display_name] + @user = User.active.find_by!(:display_name => display_name) rescue ActiveRecord::RecordNotFound - render_unknown_user params[:display_name] + render_unknown_user display_name end ## @@ -45,13 +46,15 @@ module UserMethods if user.new_email.blank? || user.new_email == user.email flash[:notice] = t "accounts.update.success" else + token = user.generate_token_for(:new_email) + user.email = user.new_email if user.valid? flash[:notice] = t "accounts.update.success_confirm_needed" begin - UserMailer.email_confirm(user, user.tokens.create).deliver_later + UserMailer.email_confirm(user, token).deliver_later rescue StandardError # Ignore errors sending email end