--- loncom/interface/lonquickgrades.pm 2005/01/03 14:46:41 1.35 +++ loncom/interface/lonquickgrades.pm 2006/02/27 19:40:43 1.39 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Quick Student Grades Display # -# $Id: lonquickgrades.pm,v 1.35 2005/01/03 14:46:41 albertel Exp $ +# $Id: lonquickgrades.pm,v 1.39 2006/02/27 19:40:43 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -34,6 +34,8 @@ use Apache::Constants qw(:common :http); use POSIX; use Apache::loncommon; use Apache::lonlocal; +use Apache::lonnet; +use Apache::grades; sub handler { my $r = shift; @@ -47,7 +49,7 @@ sub real_handler { # Handle header-only request if ($r->header_only) { - if ($ENV{'browser.mathml'}) { + if ($env{'browser.mathml'}) { &Apache::loncommon::content_type($r,'text/xml'); } else { &Apache::loncommon::content_type($r,'text/html'); @@ -57,7 +59,7 @@ sub real_handler { } # Send header, don't cache this page - if ($ENV{'browser.mathml'}) { + if ($env{'browser.mathml'}) { &Apache::loncommon::content_type($r, 'text/xml'); } else { &Apache::loncommon::content_type($r, 'text/html'); @@ -66,16 +68,16 @@ sub real_handler { $r->send_http_header; my $showPoints = - $ENV{'course.'.$ENV{'request.course.id'}.'.grading'} eq 'standard'; + $env{'course.'.$env{'request.course.id'}.'.grading'} eq 'standard'; my $notshowSPRSlink = - $ENV{'course.'.$ENV{'request.course.id'}.'.grading'} eq 'external'; + $env{'course.'.$env{'request.course.id'}.'.grading'} eq 'external'; # Create the nav map my $navmap = Apache::lonnavmaps::navmap->new(); if (!defined($navmap)) { my $requrl = $r->uri; - $ENV{'user.error.msg'} = "$requrl:bre:0:0:Navamp initialization failed."; + $env{'user.error.msg'} = "$requrl:bre:0:0:Navamp initialization failed."; return HTTP_NOT_ACCEPTABLE; } @@ -156,7 +158,7 @@ HEADER $totalAttempted += $partsAttempted; } } else { - $score = $curRes->weight($part) * $curRes->awarded($part); + $score = &Apache::grades::compute_points($curRes->weight($part), $curRes->awarded($part)); } $partsRight += $score; $totalRight += $score; @@ -170,7 +172,8 @@ HEADER my $status = $curRes->simpleStatus($part); my $thisright = 0; $partsCount++; - if ($status == $curRes->CORRECT ) { + if ($status == $curRes->CORRECT || + $status == $curRes->PARTIALLY_CORRECT ) { $partsRight++; $totalRight++; $thisright = 1;