X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fotaker_Mixin.pm;h=0da9aeedbf28d0f714e2644dfff1482c1d674d14;hb=2bdb2bb70aee8faf11da3b09f110be892103c0a7;hp=c8479cd7790b7c97b8f0832224e8024adf13bc11;hpb=627408df58ee7efff68e8cb08e0deba5a677d8a9;p=freeside.git diff --git a/FS/FS/otaker_Mixin.pm b/FS/FS/otaker_Mixin.pm index c8479cd77..0da9aeedb 100644 --- a/FS/FS/otaker_Mixin.pm +++ b/FS/FS/otaker_Mixin.pm @@ -40,11 +40,13 @@ sub _upgrade_otaker { my $class = shift; my $table = $class->table; + my $limit = ( $table eq 'cust_attachment' ? 10 : 1000 ); + while ( 1 ) { my @records = qsearch({ 'table' => $table, 'hashref' => {}, - 'extra_sql' => 'WHERE otaker IS NOT NULL LIMIT 1000', + 'extra_sql' => "WHERE otaker IS NOT NULL LIMIT $limit", }); last unless @records; @@ -52,14 +54,16 @@ sub _upgrade_otaker { eval { $record->otaker($record->otaker) }; if ( $@ ) { my $username = $record->otaker; + my($lastname, $firstname) = ( 'User', 'Legacy' ); if ( $username =~ /^(.+), (.+)$/ ) { - $username = lc($2.$1); + ($lastname, $firstname) = ($1, $2); + $username = lc($firstname.$lastname); } my $access_user = new FS::access_user { 'username' => $username, '_password' => 'CHANGEME', - 'first' => 'Legacy', - 'last' => 'User', + 'first' => $firstname, + 'last' => $lastname, 'disabled' => 'Y', }; my $error = $access_user->insert;