version 1.1, 2002/11/14 21:36:23
|
version 1.2, 2002/11/15 19:32:09
|
Line 60 sub handler {
|
Line 60 sub handler {
|
# Create the nav map |
# Create the nav map |
my $navmap = Apache::lonnavmaps::navmap->new( |
my $navmap = Apache::lonnavmaps::navmap->new( |
$ENV{"request.course.fn"}.".db", |
$ENV{"request.course.fn"}.".db", |
$ENV{"request.course.fn"}."_parms.db", 0, 0); |
$ENV{"request.course.fn"}."_parms.db", 1, 0); |
|
|
if (!defined($navmap)) { |
if (!defined($navmap)) { |
my $requrl = $r->uri; |
my $requrl = $r->uri; |
Line 69 sub handler {
|
Line 69 sub handler {
|
} |
} |
|
|
# Header |
# Header |
$r->print(&Apache::loncommon::bodytag('Navigate Course Map','', |
$r->print(&Apache::loncommon::bodytag('Quick Score Display','', |
'')); |
'')); |
|
|
|
$navmap->init(); |
|
|
# End navmap using boilerplate |
# End navmap using boilerplate |
|
|
|
# Col labels |
|
$r->print(<<TABLETOP); |
|
<table border="1" cellpadding="3" cellspacing="0"> |
|
<tr> |
|
<td align="center"><b>Problem</b></td> |
|
<td align="center"><b>Score</b></td> |
|
</tr> |
|
TABLETOP |
|
|
my $iterator = $navmap->getIterator(undef, undef, undef, 1); |
my $iterator = $navmap->getIterator(undef, undef, undef, 1); |
my $depth = 1; |
my $depth = 1; |
$iterator->next(); # ignore first BEGIN_MAP |
$iterator->next(); # ignore first BEGIN_MAP |
my $curRes = $iterator->next(); |
my $curRes = $iterator->next(); |
|
my $totalAvailable = 0; |
|
my $total = 0; |
|
|
while ( $depth > 0 ) { |
while ( $depth > 0 ) { |
if ($curRes == $iterator->BEGIN_MAP()) {$depth++;} |
if ($curRes == $iterator->BEGIN_MAP()) {$depth++;} |
Line 85 sub handler {
|
Line 98 sub handler {
|
|
|
if (ref($curRes) && $curRes->is_problem()) { |
if (ref($curRes) && $curRes->is_problem()) { |
my $title = $curRes->compTitle(); |
my $title = $curRes->compTitle(); |
$r->print($title . '<br />' . "\n"); |
$r->print(' <tr>'); |
|
my $stack = $iterator->getStack(); |
|
my $src = Apache::lonnavmaps::getLinkForResource($stack); |
|
my $srcHasQuestion = $src =~ /\?/; |
|
my $link = $src. |
|
($srcHasQuestion?'&':'?') . |
|
'symb='.&Apache::lonnet::escape($curRes->symb()). |
|
'"'; |
|
$r->print("<td><a href=\"$link\">$title</td>"); |
|
|
|
my $avail = 0; |
|
my $score = 0; |
|
my $parts = $curRes->parts(); |
|
for my $part (@{$parts}) { |
|
my $partAvail = $curRes->weight($part); |
|
my $partScore = $curRes->awarded($part) * $partAvail; |
|
$avail += $partAvail; |
|
$score += $partScore; |
|
} |
|
|
|
$r->print("<td align=\"right\">$score / $avail</td></tr>\n"); |
|
$totalAvailable += $avail; |
|
$total += $score; |
} |
} |
|
|
$curRes = $iterator->next(); |
$curRes = $iterator->next(); |
} |
} |
|
|
|
$r->print("<td colspan=\"2\" align=\"right\">Total Points Scored: <b>$total</b>"); |
|
$r->print("<br />Total Points Available: <b>$totalAvailable</b>"); |
|
$r->print("</td></tr></table>\n\n"); |
|
|
$r->print("</body></html>"); |
$r->print("</body></html>"); |
|
|
return OK; |
return OK; |