--- loncom/interface/Attic/lonchart.pm 2002/02/19 18:58:10 1.30 +++ loncom/interface/Attic/lonchart.pm 2002/02/28 01:49:33 1.32 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # (Publication Handler # -# $Id: lonchart.pm,v 1.30 2002/02/19 18:58:10 minaeibi Exp $ +# $Id: lonchart.pm,v 1.32 2002/02/28 01:49:33 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -88,10 +88,10 @@ sub ExtractStudentData { substr($rowlabels[$index]. ' ',0,45).' ! '; unless ($reply=~/^error\:/) { - map { + foreach (split(/\&/,$reply)) { my ($name,$value)=split(/\=/,&Apache::lonnet::unescape($_)); $result{$name}=$value; - } split(/\&/,$reply); + } $ProbNo = 0; $ProbTotal = 0; $ProbSolved = 0; @@ -109,7 +109,7 @@ sub ExtractStudentData { my $meta=$hash{'src_'.$ResId}; my $PartNo = 0; undef %TempHash; - map { + foreach (split(/\,/,&Apache::lonnet::metadata($meta,'keys'))) { if ($_=~/^stores\_(\d+)\_tries$/) { my $Part=&Apache::lonnet::metadata($meta,$_.'.part'); if ( $TempHash{"$Part"} eq '' ) { @@ -119,7 +119,7 @@ sub ExtractStudentData { $PartNo++; } } - } split(/\,/,&Apache::lonnet::metadata($meta,'keys')); + } my $Prob = &Apache::lonnet::declutter( $hash{'map_id_'.$1} ). '___'.$2.'___'. @@ -217,9 +217,9 @@ sub tracetable { } } if (defined($hash{'to_'.$rid})) { - map { + foreach (split(/\,/,$hash{'to_'.$rid})){ &tracetable($hash{'goesto_'.$_},$beenhere); - } split(/\,/,$hash{'to_'.$rid}); + } } } } @@ -239,8 +239,8 @@ sub BuildChart { ('dump:'.$cdom.':'.$cnum.':classlist',$chome); my $now=time; unless ($classlst=~/^error\:/) { - map { - my ($name,$value)=split(/\=/,$_); + foreach my $KeyPoint(sort split(/\&/,$classlst)) { + my ($name,$value)=split(/\=/,$KeyPoint); my ($end,$start)=split(/\:/,&Apache::lonnet::unescape($value)); my $active=1; if (($end) && ($now>$end)) { $active=0; } @@ -260,11 +260,11 @@ sub BuildChart { ':environment:lastname&generation&firstname&middlename', &Apache::lonnet::homeserver($sname,$sdom)); #$ssec=(int($ssec)) ? int($ssec) : $ssec; - $rowlabels[$thisindex]= - sprintf('%3s',$ssec).' '.$reply{$sname}.' '; - $PreCol[$thisindex] .= $reply.':'.$ssec; + my $sec=sprintf('%3s',$ssec); + $rowlabels[$thisindex]=$sec.' '.$reply{$sname}.' '; + $PreCol[$thisindex] .= $reply.':'.$sec; my $i=0; - map { + foreach (split(/\&/,$reply)) { $i++; if ( $_ ne '') { $rowlabels[$thisindex].=&Apache::lonnet::unescape($_).' '; @@ -273,10 +273,10 @@ sub BuildChart { chop($rowlabels[$thisindex]); $rowlabels[$thisindex].=', '; } - } split(/\&/,$reply); + } } } - } sort split(/\&/,$classlst); + } } else { $r->print('

Could not access course data

'); @@ -321,7 +321,7 @@ sub CreateForm { } sub CacheChart { - my @list = (); + my %list = (); my $count=0; my $Pos = $ENV{'form.sort'}; @@ -332,11 +332,11 @@ sub CacheChart { foreach my $key( keys %CachData) { my @Temp=split(/\:/,$key); my $Use = $Temp[$Pos]; - $list[$count]=$Use.$key.'*'.$CachData{$key}; + $list{$Use.$key}=$key; $count++; } - @list = sort (@list); + my @order = sort(keys(%list)); $r->print('

'.$count.' students

'); &CreateForm(); @@ -344,8 +344,7 @@ sub CacheChart { $r->print('

');
     for ( my $n; $n < $count; $n++) {
-	my ($dummy, $Line) = split(/\*/,$list[$n]);
-	$r->print($Line.'
'); + $r->print($CachData{$list{$order[$n]}}.'
'); } $r->print('
'); }