--- loncom/interface/loncoursedata.pm 2002/10/14 19:06:21 1.35 +++ loncom/interface/loncoursedata.pm 2002/10/17 19:36:30 1.38 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # (Publication Handler # -# $Id: loncoursedata.pm,v 1.35 2002/10/14 19:06:21 matthew Exp $ +# $Id: loncoursedata.pm,v 1.38 2002/10/17 19:36:30 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1429,7 +1429,7 @@ sub get_classlist { ($end,$start,$id,$section,$fullname) = @Values; } else { # We have to get the data ourselves ($end,$start) = @Values; - $section = &Apache::lonnet::usection($sdom,$sname,$cid); + $section = &Apache::lonnet::getsection($sdom,$sname,$cid); my %info=&Apache::lonnet::get('environment', ['firstname','middlename', 'lastname','generation','id'], @@ -1438,14 +1438,25 @@ sub get_classlist { if ($tmp =~/^(con_lost|error|no_such_host)/i) { $fullname = 'not available'; $id = 'not available'; + &Apache::lonnet::logthis('unable to retrieve environment '. + 'for '.$sname.':'.$sdom); } else { $fullname = &ProcessFullName(@info{qw/lastname generation firstname middlename/}); $id = $info{'id'}; } - # At this point, if we have the data (check for 'not available's - # we could put it back into the classlist.db file. - # We have not decided to do that yet. + # Update the classlist with this students information + if ($fullname ne 'not available') { + my $enrolldata = join(':',$end,$start,$id,$section,$fullname); + my $reply=&Apache::lonnet::cput('classlist', + {$student => $enrolldata}, + $cdom,$cnum); + if ($reply !~ /^(ok|delayed)/) { + &Apache::lonnet::logthis('Unable to update classlist for '. + 'student '.$sname.':'.$sdom. + ' error:'.$reply); + } + } } my $status='Expired'; if(((!$end) || $now < $end) && ((!$start) || ($now > $start))) { @@ -1467,3 +1478,4 @@ sub get_classlist { 1; __END__ +