--- loncom/homework/grades.pm 2003/06/12 20:11:07 1.95
+++ loncom/homework/grades.pm 2003/06/18 17:37:46 1.100
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# The LON-CAPA Grading handler
#
-# $Id: grades.pm,v 1.95 2003/06/12 20:11:07 albertel Exp $
+# $Id: grades.pm,v 1.100 2003/06/18 17:37:46 bowersj2 Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -466,8 +466,13 @@ LISTJAVASCRIPT
'onClick="javascript:checkSelect(this.form.stuinfo);" '.
'value="'.$viewgrade.'" />'."\n";
if ($ctr == 0) {
- $gradeTable='
'.
- 'No submission found for this resource.
';
+ my $num_students=(scalar(keys(%$fullname)));
+ if ($num_students eq 0) {
+ $gradeTable='
There are no students currently enrolled.';
+ } else {
+ $gradeTable='
'.
+ 'No submissions found for this resource for any students. ('.$num_students.' checked for submissions
';
+ }
} elsif ($ctr == 1) {
$gradeTable =~ s/type=checkbox/type=checkbox checked/;
}
@@ -1924,6 +1929,10 @@ sub viewgrades {
$result.=''."\n";
$result.=''."\n";
+ if (scalar(%$fullname) eq 0) {
+ my $colspan=3+scalar(@parts);
+ $result='There are no students in section "'.$ENV{'form.section'}.'" with enrollment status "'.$ENV{'form.status'}.'" to modify or grade.';
+ }
$result.=&show_grading_menu_form($symb,$url);
return $result;
}
@@ -2386,7 +2395,7 @@ sub csvuploadassign {
}
$request->print('
Assigning Grades
');
my $courseid=$ENV{'request.course.id'};
- my ($classlist) = &getclasslist('all','1');
+ my ($classlist) = &getclasslist('all',0);
my @skipped;
my $countdone=0;
foreach my $grade (@gradedata) {
@@ -2418,7 +2427,6 @@ sub csvuploadassign {
$request->print('
Skipped Students
');
foreach my $student (@skipped) { $request->print("
$student"); }
}
- $request->print(&view_edit_entire_class_form($symb,$url));
$request->print(&show_grading_menu_form($symb,$url));
return '';
}
@@ -2592,7 +2600,7 @@ sub getSymbMap {
my $ctr=0;
while ($mapdepth > 0) {
if($mapcurRes == $mapiterator->BEGIN_MAP) { $mapdepth++; }
- if($mapcurRes == $mapiterator->END_MAP) { $mapdepth++; }
+ if($mapcurRes == $mapiterator->END_MAP) { $mapdepth--; }
if (ref($mapcurRes) && $mapcurRes->is_problem() && !$mapcurRes->randomout) {
$countProblems++;
@@ -2665,7 +2673,7 @@ sub displayPage {
my $curRes = $iterator->next(); # for "current resource"
while ($depth > 0 && $ctr < 100) { # ctr, just in case it never gets out of loop
if($curRes == $iterator->BEGIN_MAP) { $depth++; }
- if($curRes == $iterator->END_MAP) { $depth++; }
+ if($curRes == $iterator->END_MAP) { $depth--; }
if (ref($curRes) && $curRes->is_problem() && !$curRes->randomout) {
my $parts = $curRes->parts();
@@ -2751,6 +2759,8 @@ sub displayPage {
$ctr++;
}
+ $navmap->untieHashes();
+
$studentTable.=''."\n".
' '.
@@ -2797,7 +2807,7 @@ sub updateGradeByPage {
my ($depth,$ctr,$question,$changeflag)= (1,0,1,0);
while ($depth > 0 && $ctr < 100) { # ctr, just in case it never gets out of loop
if($curRes == $iterator->BEGIN_MAP) { $depth++; }
- if($curRes == $iterator->END_MAP) { $depth++; }
+ if($curRes == $iterator->END_MAP) { $depth--; }
if (ref($curRes) && $curRes->is_problem() && !$curRes->randomout) {
my $parts = $curRes->parts();
@@ -2860,6 +2870,8 @@ sub updateGradeByPage {
$ctr++;
}
+ $navmap->untieHashes();
+
$studentTable.='';
$studentTable.=&show_grading_menu_form($ENV{'form.symb'},$ENV{'form.url'});
my $grademsg=($changeflag == 0 ? 'No score was changed or updated.' :
@@ -3416,15 +3428,14 @@ sub handler {
if ($tsymb) {
my ($map,$id,$url)=split(/\_\_\_/,$tsymb);
if (&Apache::lonnet::allowed('mgr',$tcrsid)) {
- $request->print(
- &Apache::lonnet::ssi('/res/'.$url,
- ('grade_username' => $tuname,
- 'grade_domain' => $tudom,
- 'grade_courseid' => $tcrsid,
- 'grade_symb' => $tsymb)));
+ $request->print(&Apache::lonnet::ssi_body('/res/'.$url,
+ ('grade_username' => $tuname,
+ 'grade_domain' => $tudom,
+ 'grade_courseid' => $tcrsid,
+ 'grade_symb' => $tsymb)));
} else {
$request->print('Not authorized: '.$token.'
');
- }
+ }
} else {
$request->print('Not a valid DocID: '.$token.'
');
}