--- loncom/interface/loncreateuser.pm 2010/03/21 15:00:31 1.336 +++ loncom/interface/loncreateuser.pm 2010/04/02 14:18:50 1.338 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Create a user # -# $Id: loncreateuser.pm,v 1.336 2010/03/21 15:00:31 raeburn Exp $ +# $Id: loncreateuser.pm,v 1.338 2010/04/02 14:18:50 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2582,7 +2582,8 @@ sub update_user_data { push(@disporder,'reqcrsotherdom'); } push(@disporder,('quota','tools')); - my ($defquota,my $settingstatus) = + $oldinststatus = $userenv{'inststatus'}; + my ($defquota,$settingstatus) = &Apache::loncommon::default_quota($env{'form.ccdomain'},$oldinststatus); my %canshow; if (&Apache::lonnet::allowed('mpq',$env{'form.ccdomain'})) { @@ -2600,7 +2601,6 @@ sub update_user_data { $canshow{'inststatus'} = 1; } my (%changeHash,%changed); - $oldinststatus = $userenv{'inststatus'}; if ($oldinststatus eq '') { $oldsettings{'inststatus'} = $othertitle; } else { @@ -2624,7 +2624,7 @@ sub update_user_data { if (ref($usertypes) eq 'HASH') { $newsettings{'inststatus'} = join(', ',map{ $usertypes->{$_}; } (@inststatuses)); } else { - $newsettings{'inststatus'} = join(', ',map{ $usertypes->{$_}; } (@inststatuses)); + $newsettings{'inststatus'} = join(', ',@inststatuses); } } } else { @@ -2637,6 +2637,7 @@ sub update_user_data { } } elsif ($context ne 'selfcreate') { $canshow{'inststatus'} = 1; + $newsettings{'inststatus'} = $oldsettings{'inststatus'}; } $changeHash{'portfolioquota'} = $userenv{'portfolioquota'}; if ($context eq 'domain') { @@ -2697,12 +2698,6 @@ sub update_user_data { $oldsettings{'quota'} = $oldportfolioquota.' Mb'; $newsettings{'quota'} = $newportfolioquota.' Mb'; if ((keys(%namechanged) > 0) || (keys(%changed) > 0)) { - $changeHash{'firstname'} = $env{'form.cfirstname'}; - $changeHash{'middlename'} = $env{'form.cmiddlename'}; - $changeHash{'lastname'} = $env{'form.clastname'}; - $changeHash{'generation'} = $env{'form.cgeneration'}; - $changeHash{'id'} = $env{'form.cid'}; - $changeHash{'permanentemail'} = $env{'form.cpermanentemail'}; my ($chgresult,$namechgresult); if (keys(%changed) > 0) { $chgresult = @@ -2743,13 +2738,16 @@ sub update_user_data { } } if (keys(%namechanged) > 0) { - # Make the change + foreach my $field (@userinfo) { + $changeHash{$field} = $env{'form.c'.$field}; + } +# Make the change $namechgresult = &Apache::lonnet::modifyuser($env{'form.ccdomain'}, $env{'form.ccuname'},$changeHash{'id'},undef,undef, $changeHash{'firstname'},$changeHash{'middlename'}, $changeHash{'lastname'},$changeHash{'generation'}, - $changeHash{'id'},undef,$changeHash{'permanentemail'}); + $changeHash{'id'},undef,$changeHash{'permanentemail'},undef,\@userinfo); %userupdate = ( lastname => $env{'form.clastname'}, middlename => $env{'form.cmiddlename'}, @@ -6271,7 +6269,8 @@ sub update_selfenroll_config { $newnum ++; } } - for (my $j=0; $j<$env{'form.selfenroll_types_total'}; $j++) { if ((!grep(/^$j$/,@deletedoms)) && (!grep(/^$j$/,@activations))) { + for (my $j=0; $j<$env{'form.selfenroll_types_total'}; $j++) { + if ((!grep(/^$j$/,@deletedoms)) && (!grep(/^$j$/,@activations))) { my @types = &Apache::loncommon::get_env_multiple('form.selfenroll_types_'.$j); if (@types > 0) { @types = sort(@types);