version 1.15, 2005/06/01 19:24:50
|
version 1.16, 2005/06/03 19:33:37
|
Line 165 sub display_actions_box() {
|
Line 165 sub display_actions_box() {
|
my @tograde = (); |
my @tograde = (); |
my @bombs = (); |
my @bombs = (); |
my @warnings = (); |
my @warnings = (); |
|
my %res_title = (); |
|
|
my $domain=&Apache::loncommon::determinedomain(); |
my $domain=&Apache::loncommon::determinedomain(); |
my $function; |
my $function; |
Line 201 sub display_actions_box() {
|
Line 202 sub display_actions_box() {
|
} |
} |
|
|
&get_curr_thresholds(\%threshold,$cdom,$crs); |
&get_curr_thresholds(\%threshold,$cdom,$crs); |
&getitems(\%unread,\%ungraded,\%bombed,\%triggered,\@newdiscussions,\@tograde,\@bombs,\@warnings,$rowColor1,$rowColor2,\%threshold,$cdom,$crs); |
&getitems(\%unread,\%ungraded,\%bombed,\%triggered,\@newdiscussions,\@tograde,\@bombs,\@warnings,$rowColor1,$rowColor2,\%threshold,$cdom,$crs,%res_title); |
my ($msgcount,$critmsgcount) = &getmail(\@newmsgs,\@critmsgs); |
my ($msgcount,$critmsgcount) = &getmail(\@newmsgs,\@critmsgs); |
|
|
$r->print('<br /><table border="0" width="100%" cellpadding="2" cellspacing="4"><tr><td align="left" valign="top" width="45%">'); |
$r->print('<br /><table border="0" width="100%" cellpadding="2" cellspacing="4"><tr><td align="left" valign="top" width="45%">'); |
Line 255 END
|
Line 256 END
|
my $bombnum = 0; |
my $bombnum = 0; |
if (@bombs > 0) { |
if (@bombs > 0) { |
$r->print('<tr bgcolor="#cccccc"><td><b><small>Resource</small></b></td><td align="right"><b><small>Number of errors</small></b></td></tr>'); |
$r->print('<tr bgcolor="#cccccc"><td><b><small>Resource</small></b></td><td align="right"><b><small>Number of errors</small></b></td></tr>'); |
# @bombs = sort { &cmp_title($a,$b) } @bombs; |
@bombs = sort { &cmp_title($a,$b,\%res_title) } @bombs; |
foreach my $bomb (@bombs) { |
foreach my $bomb (@bombs) { |
if ($bombnum %2 == 1) { |
if ($bombnum %2 == 1) { |
$rowColor = $rowColor1; |
$rowColor = $rowColor1; |
Line 284 END
|
Line 285 END
|
</tr> |
</tr> |
<tr> |
<tr> |
<td bgcolor="#ffffff"> |
<td bgcolor="#ffffff"> |
<table width="100%" cellspacing="0" cellpadding="0" border="0"> |
<table width="100%" cellspacing="2" cellpadding="2" border="0"> |
END |
END |
my $warningnum = 0; |
my $warningnum = 0; |
if (@warnings > 0) { |
if (@warnings > 0) { |
# @warnings = sort { &cmp_title($a,$b) } @warnings; |
@warnings = sort { &cmp_title($a,$b,\%res_title) } @warnings; |
$r->print('<form name="reset_tracking" method="post">'. |
$r->print('<form name="reset_tracking" method="post">'. |
' <input type="hidden" name="action" value="reset" />'."\n"); |
' <input type="hidden" name="action" value="reset" />'."\n"); |
$r->print('<tr bgcolor="#cccccc"><td><b><small>Resource</small></b></td><td align="right"><b><small>Part</small></b></td><td align="right"><b><small>Num. students</small></b></td><td align="right"><b><small>Av. Attempts</small></b></td><td align="right"><b><small>Deg. Diff</small></b></td><td align="right"><b><small>Last Reset</small></b></td><td align="right"><b><small>Reset Count?</small></b></td></tr>'); |
$r->print('<tr bgcolor="#cccccc"><td><b><small>Resource</small></b></td><td align="right"><b><small>Part</small></b></td><td align="right"><b><small>Num. students</small></b></td><td align="right"><b><small>Av. Attempts</small></b></td><td align="right"><b><small>Deg. Diff</small></b></td><td align="right"><b><small>Last Reset</small></b></td><td align="right"><b><small>Reset Count?</small></b></td></tr>'); |
Line 331 END
|
Line 332 END
|
|
|
if (@newdiscussions > 0) { |
if (@newdiscussions > 0) { |
$r->print('<tr bgcolor="#cccccc"><td><b><small>Location</small></b></td><td><b><small>Type</small></b><td align="right"><b><small>Number of new posts</small></b></td></tr>'); |
$r->print('<tr bgcolor="#cccccc"><td><b><small>Location</small></b></td><td><b><small>Type</small></b><td align="right"><b><small>Number of new posts</small></b></td></tr>'); |
# @newdiscussions = sort { &cmp_title($a,$b) } @newdiscussions; |
@newdiscussions = sort { &cmp_title($a,$b,\%res_title) } @newdiscussions; |
my $rowNum = 0; |
my $rowNum = 0; |
foreach my $ressymb (@newdiscussions) { |
foreach my $ressymb (@newdiscussions) { |
my $forum_title = $unread{$ressymb}{'title'}; |
my $forum_title = $unread{$ressymb}{'title'}; |
Line 496 sub display_config_box() {
|
Line 497 sub display_config_box() {
|
} |
} |
|
|
sub getitems { |
sub getitems { |
my ($unread,$ungraded,$bombed,$triggered,$newdiscussions,$tograde,$bombs,$warnings,$rowColor1,$rowColor2,$threshold,$cdom,$crs) = @_; |
my ($unread,$ungraded,$bombed,$triggered,$newdiscussions,$tograde,$bombs,$warnings,$rowColor1,$rowColor2,$threshold,$cdom,$crs,$res_title) = @_; |
my $navmap = Apache::lonnavmaps::navmap->new(); |
my $navmap = Apache::lonnavmaps::navmap->new(); |
my @allres=$navmap->retrieveResources(); |
my @allres=$navmap->retrieveResources(); |
my %discussiontime = &Apache::lonnet::dump('discussiontimes',$cdom,$crs); |
my %discussiontime = &Apache::lonnet::dump('discussiontimes',$cdom,$crs); |
Line 508 sub getitems {
|
Line 509 sub getitems {
|
|
|
my %resourcetracker = &Apache::lonnet::dump('nohist_resourcetracker', |
my %resourcetracker = &Apache::lonnet::dump('nohist_resourcetracker', |
$cdom,$crs); |
$cdom,$crs); |
my %res_title; |
|
my $warningnum = 0; |
my $warningnum = 0; |
foreach my $key (keys(%lastread)) { |
foreach my $key (keys(%lastread)) { |
my $newkey = $key; |
my $newkey = $key; |
Line 524 sub getitems {
|
Line 524 sub getitems {
|
%{$$triggered{$symb}} = (); |
%{$$triggered{$symb}} = (); |
$$triggered{$symb}{numparts} = 0; |
$$triggered{$symb}{numparts} = 0; |
my $title = $resource->compTitle(); |
my $title = $resource->compTitle(); |
$res_title{$symb} = $title; |
$$res_title{$symb} = $title; |
my $ressymb = $resource->wrap_symb(); |
my $ressymb = $resource->wrap_symb(); |
# Check for unread discussion postings |
# Check for unread discussion postings |
if (defined($discussiontime{$ressymb})) { |
if (defined($discussiontime{$ressymb})) { |
Line 617 sub getitems {
|
Line 617 sub getitems {
|
} |
} |
if ($users > 0) { |
if ($users > 0) { |
$av_attempts = $attempts/$users; |
$av_attempts = $attempts/$users; |
|
$av_attempts = sprintf("%.2f",$av_attempts); |
} |
} |
if ((($degdiff ne '' && $degdiff >= $$threshold{'degdiff'}) || ($av_attempts ne '' && $av_attempts >= $$threshold{'av_attempts'})) && ($users >= $$threshold{'numstudents'})) { |
if ((($degdiff ne '' && $degdiff >= $$threshold{'degdiff'}) || ($av_attempts ne '' && $av_attempts >= $$threshold{'av_attempts'})) && ($users >= $$threshold{'numstudents'})) { |
$stats{$part}{degdiff} = $degdiff; |
$stats{$part}{degdiff} = $degdiff; |
Line 824 sub getmail {
|
Line 825 sub getmail {
|
} |
} |
|
|
sub cmp_title { |
sub cmp_title { |
my ($atitle,$btitle) = (lc($_[0]->compTitle),lc($_[1]->compTitle)); |
my ($a,$b,$res_title) = @_; |
|
my ($atitle,$btitle) = (lc($$res_title{$a}),lc($$res_title{$b})); |
$atitle=~s/^\s*//; |
$atitle=~s/^\s*//; |
$btitle=~s/^\s*//; |
$btitle=~s/^\s*//; |
return $atitle cmp $btitle; |
return $atitle cmp $btitle; |