X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/e23744bd8dbdd9c0beef84e8920fc258f332197c..d24312fa8c79a370faa33c23c9bf3719c9931857:/app/controllers/user_controller.rb diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index ca84d7701..2f22ad940 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -16,6 +16,8 @@ class UserController < ApplicationController filter_parameter_logging :password, :pass_crypt, :pass_crypt_confirmation + cache_sweeper :user_sweeper, :only => [:account, :hide, :unhide, :delete] + def save @title = t 'user.new.title' @@ -71,6 +73,14 @@ class UserController < ApplicationController flash.now[:notice] = t 'user.account.flash update success' end end + else + if flash[:errors] + flash[:errors].each do |attr,msg| + @user.errors.add(attr,msg) + end + end + + @user.email = @user.new_email if @user.new_email end end @@ -225,9 +235,12 @@ class UserController < ApplicationController @user.new_email = nil @user.active = true @user.email_valid = true - @user.save! + if @user.save + flash[:notice] = t 'user.confirm_email.success' + else + flash[:errors] = @user.errors + end token.destroy - flash[:notice] = t 'user.confirm_email.success' session[:user] = @user.id redirect_to :action => 'account', :display_name => @user.display_name else