X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/49038a44d9876d6766e30deb2ff56bf4bde78af7..78db9e72bb3653ee8c666f5d10a231aecad9d984:/app/controllers/user_controller.rb diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index 3f5eef831..c9983cc85 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -166,9 +166,10 @@ class UserController < ApplicationController @user.preferred_editor = params[:user][:preferred_editor] end - @user.openid_url = nil if params[:user][:openid_url].empty? + @user.openid_url = nil if params[:user][:openid_url].blank? - if params[:user][:openid_url].length > 0 and + if params[:user][:openid_url] and + params[:user][:openid_url].length > 0 and params[:user][:openid_url] != @user.openid_url # If the OpenID has changed, we want to check that it is a # valid OpenID and one the user has control over before saving @@ -200,7 +201,15 @@ class UserController < ApplicationController @title = t 'user.lost_password.title' if params[:user] and params[:user][:email] - user = User.visible.where(:email => params[:user][:email]).first + user = User.visible.find_by_email(params[:user][:email]) + + if user.nil? + users = User.visible.where("LOWER(email) = LOWER(?)", params[:user][:email]) + + if users.count == 1 + user = users.first + end + end if user token = user.tokens.create