version 1.11, 2001/11/22 17:05:07
|
version 1.17, 2001/11/28 17:16:16
|
Line 11
|
Line 11
|
# 08/30,08/31,09/06,09/14,09/15,09/16,09/19,09/20,09/21,09/23, |
# 08/30,08/31,09/06,09/14,09/15,09/16,09/19,09/20,09/21,09/23, |
# 10/02,10/10,10/14,10/16,10/18,10/19,10/31,11/6,11/14,11/16 Gerd Kortemeyer) |
# 10/02,10/10,10/14,10/16,10/18,10/19,10/31,11/6,11/14,11/16 Gerd Kortemeyer) |
# |
# |
# 3/1/1,6/1,17/1,29/1,30/1 Gerd Kortemeyer) |
# 3/1/1,6/1,17/1,29/1,30/1,31/1 Gerd Kortemeyer) |
# |
|
# 1/31 Gerd Kortemeyer |
|
# |
|
# 7/10/01 Behrouz Minaei |
# 7/10/01 Behrouz Minaei |
# 9/8 Gerd Kortemeyer |
# 9/8 Gerd Kortemeyer |
# 10/18/01, 10/19/01 Behrouz Minaei |
# 10/18/01, 10/19/01 Behrouz Minaei |
# 11/17/01, 11/22/01 Behrouz Minaei |
# 11/17/01, 11/22/01, 11/24/01 Behrouz Minaei |
|
|
package Apache::lonchart; |
package Apache::lonchart; |
|
|
Line 52 sub ExtractStudentData {
|
Line 49 sub ExtractStudentData {
|
my $ProbNo; |
my $ProbNo; |
my $PrTotal; |
my $PrTotal; |
my $LatestVersion; |
my $LatestVersion; |
|
|
|
my $test = $ENV{'request.course.fn'}; |
|
my $comp = '/home/httpd/perl/tmp/minaeibi_msu_12679c3ed543a25msul1'; |
|
|
my $Str=substr($students[$index]. |
my $Str=substr($students[$index]. |
' ',0,14).' ! '. |
' ',0,14).' ! '. |
substr($rowlabels[$index]. |
substr($rowlabels[$index]. |
Line 76 sub ExtractStudentData {
|
Line 76 sub ExtractStudentData {
|
} |
} |
$ResId=~/(\d+)\.(\d+)/; |
$ResId=~/(\d+)\.(\d+)/; |
my $meta=$hash{'src_'.$ResId}; |
my $meta=$hash{'src_'.$ResId}; |
# $r->print($m.'<br>'); |
|
# $r->rflush(); |
|
my $PartNo = 0; |
my $PartNo = 0; |
undef %TempHash; |
undef %TempHash; |
map { |
map { |
Line 92 sub ExtractStudentData {
|
Line 90 sub ExtractStudentData {
|
} |
} |
} split(/\,/,&Apache::lonnet::metadata($meta,'keys')); |
} split(/\,/,&Apache::lonnet::metadata($meta,'keys')); |
|
|
# foreach my $Key (%TempHash) { |
|
# $r->print($Key.' = '.$TempHash{$Key}.'<br>'); |
|
# $r->rflush(); |
|
# } |
|
|
|
$r->print($PartNo.'<br>');$r->rflush(); |
|
|
|
my $Prob = &Apache::lonnet::declutter( $hash{'map_id_'.$1} ). |
my $Prob = &Apache::lonnet::declutter( $hash{'map_id_'.$1} ). |
'___'.$2.'___'. |
'___'.$2.'___'. |
&Apache::lonnet::declutter( $hash{'src_'.$ResId} ); |
&Apache::lonnet::declutter( $hash{'src_'.$ResId} ); |
Line 106 $r->print($PartNo.'<br>');$r->rflush();
|
Line 97 $r->print($PartNo.'<br>');$r->rflush();
|
$Tries = 0; |
$Tries = 0; |
$LatestVersion = $result{"version:$Prob"}; |
$LatestVersion = $result{"version:$Prob"}; |
|
|
#undef %TempHash; |
|
#my $PartNo = 0; |
|
|
|
if ( $LatestVersion ) { |
if ( $LatestVersion ) { |
for ( my $Version=1; $Version<=$LatestVersion; $Version++ ) { |
for ( my $Version=1; $Version<=$LatestVersion; $Version++ ) { |
my $vkeys = $result{"$Version:keys:$Prob"}; |
my $vkeys = $result{"$Version:keys:$Prob"}; |
my @keys = split(/\:/,$vkeys); |
my @keys = split(/\:/,$vkeys); |
|
|
foreach my $Key (@keys) { |
foreach my $Key (@keys) { |
if (($Key=~/\.(\w+)\.solved$/) && ($Key!~/^\d+\:/)) { |
if (($Key=~/\.(\w+)\.solved$/) && ($Key!~/^\d+\:/)) { |
my $Part = $1; |
my $Part = $1; |
#if ( $TempHash{"$Part"} eq '' ) { |
|
# $TempHash{"$Part"} = $Part; |
|
#$TempHash{$PartNo}=$Part; |
|
#$TempHash{"$Part.Code"} = ' '; |
|
#$PartNo++; |
|
#} |
|
$TempHash{"$Part.Tries"} = $result{"$Version:$Prob:resource.$Part.tries"}; |
|
$Tries = $result{"$Version:$Prob:resource.$Part.tries"}; |
$Tries = $result{"$Version:$Prob:resource.$Part.tries"}; |
my $Val = $result{"$Version:$Prob:$Key"}; |
if ($Tries) {$TempHash{"$Part.Tries"}=$Tries;} |
|
#my $Val = $result{"$Version:$Prob:$Key"}; |
|
my $Val = $result{"$Version:$Prob:resource.$Part.solved"}; |
if ($Val eq 'correct_by_student'){$Code='*';} |
if ($Val eq 'correct_by_student'){$Code='*';} |
elsif ($Val eq 'correct_by_override'){$Code = '+';} |
elsif ($Val eq 'correct_by_override'){$Code = '+';} |
elsif ($Val eq 'incorrect_attempted'){$Code = '.';} |
elsif ($Val eq 'incorrect_attempted'){$Code = '.';} |
elsif ($Val eq 'incorrect_by_override'){$Code = '-';} |
elsif ($Val eq 'incorrect_by_override'){$Code = '-';} |
elsif ($Val eq 'excused'){$Code = 'x';} |
elsif ($Val eq 'excused'){$Code = 'x';} |
|
else {$Code = ' ';} |
$TempHash{"$Part.Code"} = $Code; |
$TempHash{"$Part.Code"} = $Code; |
|
# if ($test=~/*minaeibi*/) { |
|
$r->print($Key."PartNo =$PartNo "."Tries=$Tries!<br>$Version:$Prob:resource.$Part.tries".' = '.$result{"$Version:$Prob:resource.$Part.tries"}." $Val "."($Code)".'<br>'); |
|
# } |
} |
} |
} |
} |
} |
} |
Line 144 $r->print($PartNo.'<br>');$r->rflush();
|
Line 132 $r->print($PartNo.'<br>');$r->rflush();
|
} |
} |
} |
} |
$Str .= $TempHash{$part.'.Code'}; |
$Str .= $TempHash{$part.'.Code'}; |
|
$r->print($n.") Part=".$part." code=$TempHash{$part.'.Code'}<br>"); |
} |
} |
} |
} |
else {for(my $n=0; $n<$PartNo; $n++) {$Str.=' ';}} |
else {for(my $n=0; $n<$PartNo; $n++) {$Str.=' ';}} |