--- loncom/homework/grades.pm	2007/10/09 10:31:21	1.448
+++ loncom/homework/grades.pm	2007/10/09 19:33:56	1.449
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # The LON-CAPA Grading handler
 #
-# $Id: grades.pm,v 1.448 2007/10/09 10:31:21 foxr Exp $
+# $Id: grades.pm,v 1.449 2007/10/09 19:33:56 banghart Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -475,7 +475,7 @@ COMMONJSFUNCTIONS
 #--- Dumps the class list with usernames,list of sections,
 #--- section, ids and fullnames for each user.
 sub getclasslist {
-    my ($getsec,$filterlist) = @_;
+    my ($getsec,$filterlist,$getgroup) = @_;
     my @getsec;
     my $stu_status = join(':',&Apache::loncommon::get_env_multiple('form.Status'));
     if (!ref($getsec)) {
@@ -487,9 +487,10 @@ sub getclasslist {
     }
     if (grep(/^all$/,@getsec)) { undef(@getsec); }
 
-    my $classlist=&Apache::loncoursedata::get_classlist();
+    my ($classlist,$keylist)=&Apache::loncoursedata::get_classlist();
     # Bail out if we were unable to get the classlist
     return if (! defined($classlist));
+    &Apache::loncoursedata::get_group_memberships($classlist,$keylist);
     #
     my %sections;
     my %fullnames;
@@ -506,6 +507,8 @@ sub getclasslist {
             $classlist->{$student}->[&Apache::loncoursedata::CL_FULLNAME()];
         my $status   = 
             $classlist->{$student}->[&Apache::loncoursedata::CL_STATUS()];
+        my $group   = 
+            $classlist->{$student}->[&Apache::loncoursedata::CL_GROUP()];
 	# filter students according to status selected
 	if ($filterlist && (!($stu_status =~ /Any/))) {
 	    if (!($stu_status =~ $status)) {
@@ -768,8 +771,8 @@ sub listStudents {
     my $cdom      = $env{"course.$env{'request.course.id'}.domain"};
     my $cnum      = $env{"course.$env{'request.course.id'}.num"};
     my $getsec    = $env{'form.section'} eq '' ? 'all' : $env{'form.section'};
+    my $getgroup  = $env{'form.group'} eq '' ? 'all' : $env{'form.group'};
     my $submitonly= $env{'form.submitonly'} eq '' ? 'all' : $env{'form.submitonly'};
-
     my $viewgrade = $env{'form.showgrading'} eq 'yes' ? 'View/Grade/Regrade' : 'View';
     $env{'form.probTitle'} = $env{'form.probTitle'} eq '' ? 
 	&Apache::lonnet::gettitle($symb) : $env{'form.probTitle'};
@@ -1784,7 +1787,6 @@ sub build_section_inputs {
 # --------------------------- show submissions of a student, option to grade 
 sub submission {
     my ($request,$counter,$total) = @_;
-
     my ($uname,$udom)     = ($env{'form.student'},$env{'form.userdom'});
     $udom = ($udom eq '' ? $env{'user.domain'} : $udom); #has form.userdom changed for a student?
     my $usec = &Apache::lonnet::getsection($udom,$uname,$env{'request.course.id'});