--- loncom/interface/lonwhatsnew.pm 2012/12/13 22:09:33 1.105.2.4 +++ loncom/interface/lonwhatsnew.pm 2015/07/21 21:26:32 1.118 @@ -1,5 +1,5 @@ # -# $Id: lonwhatsnew.pm,v 1.105.2.4 2012/12/13 22:09:33 raeburn Exp $ +# $Id: lonwhatsnew.pm,v 1.118 2015/07/21 21:26:32 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -532,28 +532,33 @@ sub display_actions_box { $headings{'crslogin'} = &mt('Last login for users in last 24 hours'); } - my $now = time; + my ($now,$starttime,$activatedstart,$expiredstart,$crsloginstart); + $now = time; + if ($timediff{'versions'} == -1) { - $timediff{'versions'} = time; + $starttime = 0; + } else { + $starttime = $now - $timediff{'versions'}; } - my $starttime = $now - $timediff{'versions'}; if ($timediff{'newroles'} == -1) { - $timediff{'newroles'} = time; + $activatedstart = 0; + } else { + $activatedstart = $now - $timediff{'newroles'}; } - my $activatedstart = $now - $timediff{'newroles'}; if ($timediff{'oldroles'} == -1) { - $timediff{'oldroles'} = time; + $expiredstart = 0; + } else { + $expiredstart = $now - $timediff{'oldroles'}; } - my $expiredstart = $now - $timediff{'oldroles'}; if ($timediff{'crslogin'} == -1) { - $timediff{'crslogin'} = time; + $crsloginstart = 0; + } else { + $crsloginstart = $now - $timediff{'crslogin'}; } - my $crsloginstart = $now - $timediff{'crslogin'}; - my $countunread = $display_settings{$cid.':countunread'}; unless (defined($countunread)) { $countunread = 'on'; @@ -593,6 +598,10 @@ sub display_actions_box { if ($needitems) { $itemserror = &getitems(\%unread,\%ungraded,\%bombed,\%triggered,\%changed,\@newdiscussions,\@tograde,\@bombs,\@warnings,\%threshold,$cdom,$crs,\%res_title,\%show,$starttime,$countunread); } + my $classlist; + if ($show{'oldroles'} || $show{'newroles'} || $show{'crslogin'}) { + $classlist = &Apache::loncoursedata::get_classlist(); + } if ($show{'coursenormalmail'}) { $msgcount = &getnormalmail(\@newmsgs); } @@ -600,10 +609,10 @@ sub display_actions_box { $critmsgcount = &getcritmail(\@critmsgs); } if ($show{'oldroles'}) { - $expirecount = &getexpired(\%expired,$expiredstart,'previous'); + $expirecount = &getexpired(\%expired,$expiredstart,'previous',$classlist); } if ($show{'newroles'}) { - $activecount = &getactivated(\%activated,$activatedstart,'active'); + $activecount = &getactivated(\%activated,$activatedstart,'active',$classlist); } if ($show{'crslogin'}) { $logincount = &getloggedin($cdom,$crs,\%loggedin,$crsloginstart); @@ -636,7 +645,7 @@ sub display_actions_box { if ($displayed == $halfway) { $r->print('