Code cleanup.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11222 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2013-01-20 13:57:29 +00:00
parent e355a55e3c
commit 5741d007f6
1 changed files with 9 additions and 6 deletions

View File

@ -353,13 +353,16 @@ class User < Principal
# Find a user account by matching the exact login and then a case-insensitive # Find a user account by matching the exact login and then a case-insensitive
# version. Exact matches will be given priority. # version. Exact matches will be given priority.
def self.find_by_login(login) def self.find_by_login(login)
# First look for an exact match if login.present?
user = where(:login => login).all.detect {|u| u.login == login} login = login.to_s
unless user # First look for an exact match
# Fail over to case-insensitive if none was found user = where(:login => login).all.detect {|u| u.login == login}
user = where("LOWER(login) = ?", login.to_s.downcase).first unless user
# Fail over to case-insensitive if none was found
user = where("LOWER(login) = ?", login.downcase).first
end
user
end end
user
end end
def self.find_by_rss_key(key) def self.find_by_rss_key(key)