Revision 1127
Added by Jean-Philippe Lang over 17 years ago
trunk/lib/tasks/migrate_from_mantis.rake | ||
---|---|---|
87 | 87 |
set_table_name :mantis_user_table |
88 | 88 |
|
89 | 89 |
def firstname |
90 |
realname.blank? ? username : realname.split.first[0..29] |
|
90 |
@firstname = realname.blank? ? username : realname.split.first[0..29] |
|
91 |
@firstname.gsub!(/[^\w\s\'\-]/i, '') |
|
92 |
@firstname |
|
91 | 93 |
end |
92 | 94 |
|
93 | 95 |
def lastname |
94 |
realname.blank? ? username : realname.split[1..-1].join(' ')[0..29] |
|
96 |
@lastname = realname.blank? ? username : realname.split[1..-1].join(' ')[0..29] |
|
97 |
@lastname.gsub!(/[^\w\s\'\-]/i, '') |
|
98 |
@lastname = '-' if @lastname.blank? |
|
99 |
@lastname |
|
95 | 100 |
end |
96 | 101 |
|
97 | 102 |
def email |
98 |
if read_attribute(:email).match(/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i) |
|
99 |
read_attribute(:email) |
|
103 |
if read_attribute(:email).match(/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i) && |
|
104 |
!User.find_by_mail(read_attribute(:email)) |
|
105 |
@email = read_attribute(:email) |
|
100 | 106 |
else |
101 |
"#{username}@foo.bar" |
|
107 |
@email = "#{username}@foo.bar"
|
|
102 | 108 |
end |
103 | 109 |
end |
104 | 110 |
|
... | ... | |
246 | 252 |
u.password = 'mantis' |
247 | 253 |
u.status = User::STATUS_LOCKED if user.enabled != 1 |
248 | 254 |
u.admin = true if user.access_level == 90 |
249 |
next unless u.save |
|
255 |
next unless u.save!
|
|
250 | 256 |
users_migrated += 1 |
251 | 257 |
users_map[user.id] = u.id |
252 | 258 |
print '.' |
Also available in: Unified diff
Mantis importer: few fixes in user mapping.