Story #109367694 - add support for imported data, name was used

This commit is contained in:
Matt Farnsworth 2015-12-04 15:27:42 +02:00
parent 9332de4079
commit 3f906b5ac6

View file

@ -22,30 +22,28 @@ module Versions
def creator def creator
return nil if creator_str.blank? return nil if creator_str.blank?
creator = user_from_id_class_name creator_str
if creator_str =~ /^\d+-AdminUser:/
creator = AdminUser.find_by(id: creator_str)
elsif creator_str =~ /^\d+-ApiUser:/
creator = ApiUser.find_by(id: creator_str)
elsif creator_str =~ /^\d+-api-/ # depricated
creator = ApiUser.find_by(id: creator_str)
end
creator.present? ? creator : creator_str creator.present? ? creator : creator_str
end end
def updator def updator
return nil if updator_str.blank? return nil if updator_str.blank?
updator = user_from_id_class_name updator_str
if updator_str =~ /^\d+-AdminUser:/ updator.present? ? updator : updator_str
updator = AdminUser.find_by(id: updator_str)
elsif updator_str =~ /^\d+-ApiUser:/
updator = ApiUser.find_by(id: updator_str)
elsif updator_str =~ /^\d+-api-/ # depricated
updator = ApiUser.find_by(id: updator_str)
end end
updator.present? ? updator : updator_str def user_from_id_class_name(str)
user = ApiUser.find_by(id: $1) if str =~ /^(\d+)-(ApiUser:|api-)/
unless user.present?
user = AdminUser.find_by(id: $1) if str =~ /^(\d+)-AdminUser:/
unless user.present?
# on import we copied Registrar name, which may eql code
registrar = Registrar.find_by(name: str).first
# assume each registrar has only one user
user = registrar.api_users.first if registrar
end
end
user
end end
# callbacks # callbacks