version 1.28, 2002/03/15 16:31:10
|
version 1.30, 2002/03/15 21:56:11
|
Line 178 sub parmval {
|
Line 178 sub parmval {
|
# 1: not attempted |
# 1: not attempted |
# 2: attempted but wrong, or incorrect by instructor |
# 2: attempted but wrong, or incorrect by instructor |
# 3: solved or correct by instructor |
# 3: solved or correct by instructor |
# "excused" needs to be supported, but is not yet. Could be code=4. |
# 4: partially correct (one or more parts correct) |
|
# "excused" needs to be supported, but is not yet. |
sub astatus { |
sub astatus { |
my $rid=shift; |
my $rid=shift; |
my $code=1; |
my $code=0; |
my $ctext=''; |
my $ctext=''; |
$rid=~/(\d+)\.(\d+)/; |
$rid=~/(\d+)\.(\d+)/; |
my $symb=&Apache::lonnet::declutter($hash{'map_id_'.$1}).'___'.$2.'___'. |
my $symb=&Apache::lonnet::declutter($hash{'map_id_'.$1}).'___'.$2.'___'. |
Line 238 sub astatus {
|
Line 239 sub astatus {
|
my $status=$returnhash{'resource.'.$_.'.solved'}; |
my $status=$returnhash{'resource.'.$_.'.solved'}; |
|
|
if ($status eq 'correct_by_student') { |
if ($status eq 'correct_by_student') { |
unless ($code==2) { $code=3; } |
if ($code==0||$code==3) { $code=3; } else { $code=4; } |
$ctext.=' solved'; |
$ctext.=' solved'; |
} elsif ($status eq 'correct_by_override') { |
} elsif ($status eq 'correct_by_override') { |
unless ($code==2) { $code=3; } |
if ($code==0||$code==3) { $code=3; } else { $code=4; } |
$ctext.=' override'; |
$ctext.=' override'; |
} elsif ($status eq 'incorrect_attempted') { |
} elsif ($status eq 'incorrect_attempted') { |
$code=2; |
if ($code!=4 && $code!=3) { $code=2; } |
|
if ($code==3) { $code=4; } |
$ctext.=' ('. |
$ctext.=' ('. |
($returnhash{'resource.'.$_.'.tries'}? |
($returnhash{'resource.'.$_.'.tries'}? |
$returnhash{'resource.'.$_.'.tries'}:'0'); |
$returnhash{'resource.'.$_.'.tries'}:'0'); |
Line 252 sub astatus {
|
Line 254 sub astatus {
|
if ($numtries) { $ctext.='/'.$numtries.' tries'; } |
if ($numtries) { $ctext.='/'.$numtries.' tries'; } |
$ctext.=')'; |
$ctext.=')'; |
} elsif ($status eq 'incorrect_by_override') { |
} elsif ($status eq 'incorrect_by_override') { |
$code=2; |
if ($code!=4 && $code!=3) { $code=2; } |
|
if ($code==3) { $code=4; } |
$ctext.=' override'; |
$ctext.=' override'; |
} elsif ($status eq 'excused') { |
} elsif ($status eq 'excused') { |
unless ($code==2) { $code=3; } |
if ($code==0||$code==3) { $code=3; } else { $code=4; } |
$ctext.=' excused'; |
$ctext.=' excused'; |
|
} else { |
|
if ($code==0) { $code=1; } |
} |
} |
} |
} |
|
|
Line 277 sub tracetable {
|
Line 282 sub tracetable {
|
if ($hash{'map_type_'.$hash{'map_pc_'.$hash{'src_'.$rid}}} |
if ($hash{'map_type_'.$hash{'map_pc_'.$hash{'src_'.$rid}}} |
eq 'sequence') { |
eq 'sequence') { |
$tprefix='h'; |
$tprefix='h'; |
|
} else { |
|
#if it's a page we need to still pull out the problems |
} |
} |
if (defined($rows[$sofar])) { |
if (defined($rows[$sofar])) { |
$rows[$sofar].='&'.$tprefix.$rid; |
$rows[$sofar].='&'.$tprefix.$rid; |
Line 596 sub handler {
|
Line 603 sub handler {
|
} |
} |
if ($code eq '3') { |
if ($code eq '3') { |
$add='<td bgcolor="#AAFFAA">'; |
$add='<td bgcolor="#AAFFAA">'; |
|
} elsif ($code eq '4') { |
|
$add='<td bgcolor="#E0FFAA">'; |
} else { |
} else { |
$add='<td bgcolor="#FFAAAA">'; |
$add='<td bgcolor="#FFAAAA">'; |
if ($tcode eq '2') { |
if ($tcode eq '2') { |
Line 611 sub handler {
|
Line 620 sub handler {
|
if ($code eq '1') { |
if ($code eq '1') { |
$hwke='</b> ('.$ctext.')</font>'; |
$hwke='</b> ('.$ctext.')</font>'; |
} |
} |
if ($code eq '2') { |
if ($code eq '2' || $code eq '4') { |
$hwk='<font color="#992222"><b>'; |
$hwk='<font color="#992222"><b>'; |
$hwke='</b> ('.$ctext.')</font>'; |
$hwke='</b> ('.$ctext.')</font>'; |
} |
} |