--- loncom/interface/loncreateuser.pm 2010/04/02 14:18:50 1.338 +++ loncom/interface/loncreateuser.pm 2010/04/02 14:53:26 1.339 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Create a user # -# $Id: loncreateuser.pm,v 1.338 2010/04/02 14:18:50 raeburn Exp $ +# $Id: loncreateuser.pm,v 1.339 2010/04/02 14:53:26 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2574,7 +2574,8 @@ sub update_user_data { } my ($quotachanged,$oldportfolioquota,$newportfolioquota,$oldinststatus, $newinststatus,$oldisdefault,$newisdefault,%oldsettings, - %oldsettingstext,%newsettings,%newsettingstext,@disporder); + %oldsettingstext,%newsettings,%newsettingstext,@disporder, + $olddefquota,$oldsettingstatus,$newdefquota,$newsettingstatus); @disporder = ('inststatus'); if ($env{'request.role.domain'} eq $env{'form.ccdomain'}) { push(@disporder,'requestcourses'); @@ -2583,8 +2584,9 @@ sub update_user_data { } push(@disporder,('quota','tools')); $oldinststatus = $userenv{'inststatus'}; - my ($defquota,$settingstatus) = + ($olddefquota,$oldsettingstatus) = &Apache::loncommon::default_quota($env{'form.ccdomain'},$oldinststatus); + ($newdefquota,$newsettingstatus) = ($olddefquota,$oldsettingstatus); my %canshow; if (&Apache::lonnet::allowed('mpq',$env{'form.ccdomain'})) { $canshow{'quota'} = 1; @@ -2620,6 +2622,8 @@ sub update_user_data { $changeHash{'inststatus'} = $newinststatus; if ($newinststatus ne $oldinststatus) { $changed{'inststatus'} = $newinststatus; + ($newdefquota,$newsettingstatus) = + &Apache::loncommon::default_quota($env{'form.ccdomain'},$newinststatus); } if (ref($usertypes) eq 'HASH') { $newsettings{'inststatus'} = join(', ',map{ $usertypes->{$_}; } (@inststatuses)); @@ -2633,6 +2637,8 @@ sub update_user_data { $newsettings{'inststatus'} = $othertitle; if ($newinststatus ne $oldinststatus) { $changed{'inststatus'} = $changeHash{'inststatus'}; + ($newdefquota,$newsettingstatus) = + &Apache::loncommon::default_quota($env{'form.ccdomain'},$newinststatus); } } } elsif ($context ne 'selfcreate') { @@ -2655,12 +2661,12 @@ sub update_user_data { } } else { $changed{'quota'} = "a_admin('',\%changeHash); - $newportfolioquota = $defquota; + $newportfolioquota = $newdefquota; $newisdefault = 1; } } else { $oldisdefault = 1; - $oldportfolioquota = $defquota; + $oldportfolioquota = $olddefquota; if ($env{'form.customquota'} == 1) { if ($env{'form.portfolioquota'} eq '') { $newportfolioquota = 0; @@ -2670,15 +2676,15 @@ sub update_user_data { } $changed{'quota'} = "a_admin($newportfolioquota,\%changeHash); } else { - $newportfolioquota = $defquota; + $newportfolioquota = $newdefquota; $newisdefault = 1; } } if ($oldisdefault) { - $oldsettingstext{'quota'} = &get_defaultquota_text($settingstatus); + $oldsettingstext{'quota'} = &get_defaultquota_text($oldsettingstatus); } if ($newisdefault) { - $newsettingstext{'quota'} = &get_defaultquota_text($settingstatus); + $newsettingstext{'quota'} = &get_defaultquota_text($newsettingstatus); } &tool_changes('tools',\@usertools,\%oldsettings,\%oldsettingstext,\%userenv, \%changeHash,\%changed,\%newsettings,\%newsettingstext);