An error occurred while loading the file. Please try again.
-
Jean-Philippe Lang authored
Users with same username or email are automatically mapped. Mapping can be manually adjusted in repository settings. Multiple usernames can be mapped to the same Redmine user. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2006 e93f8b46-1217-0410-a6f0-8f06a7374b81
79c33bbc
101_populate_changesets_user_id.rb 623 B
class PopulateChangesetsUserId < ActiveRecord::Migration
def self.up
committers = Changeset.connection.select_values("SELECT DISTINCT committer FROM #{Changeset.table_name}")
committers.each do |committer|
next if committer.blank?
if committer.strip =~ /^([^<]+)(<(.*)>)?$/
username, email = $1.strip, $3
u = User.find_by_login(username)
u ||= User.find_by_mail(email) unless email.blank?
Changeset.update_all("user_id = #{u.id}", ["committer = ?", committer]) unless u.nil?
end
end
end
def self.down
Changeset.update_all('user_id = NULL')
end
end