X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/15d29c646b545b65bbedeed1f49329b9292671ba..b9daf066842c9e15489d0ccd387d694021975222:/app/models/user.rb diff --git a/app/models/user.rb b/app/models/user.rb index 4c51089e6..b8ec9aebc 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -70,7 +70,14 @@ class User < ActiveRecord::Base end end - user = nil if user and not PasswordHash.check(user.pass_crypt, user.pass_salt, options[:password]) + if user and PasswordHash.check(user.pass_crypt, user.pass_salt, options[:password]) + if PasswordHash.upgrade?(user.pass_crypt, user.pass_salt) + user.pass_crypt, user.pass_salt = PasswordHash.create(options[:password]) + user.save + end + else + user = nil + end elsif options[:token] token = UserToken.find_by_token(options[:token]) user = token.user if token