version 1.199, 2006/12/11 17:37:44
|
version 1.200, 2006/12/13 22:48:10
|
Line 524 sub end_numericalresponse {
|
Line 524 sub end_numericalresponse {
|
} |
} |
foreach my $name (sort(keys(%answer))) { |
foreach my $name (sort(keys(%answer))) { |
my @answers = @{ $answer{$name}{'answers'} }; |
my @answers = @{ $answer{$name}{'answers'} }; |
|
if ($target eq 'analyze') { |
|
foreach my $info ('answer','ans_high','ans_low','format') { |
|
$Apache::lonhomework::analyze{"$part_id.$info"}{$name}=[]; |
|
} |
|
} |
my ($sigline,$tolline); |
my ($sigline,$tolline); |
if ($name ne $tag_internal_answer_name |
if ($name ne $tag_internal_answer_name |
|| scalar(keys(%answer)) > 1) { |
|| scalar(keys(%answer)) > 1) { |
Line 543 sub end_numericalresponse {
|
Line 548 sub end_numericalresponse {
|
} else { |
} else { |
@vector = ($ans); |
@vector = ($ans); |
} |
} |
if ($target eq 'answer') { |
my @all_answer_info; |
my @all_answer_info; |
foreach my $element (@vector) { |
foreach my $element (@vector) { |
my ($high,$low); |
my ($high,$low); |
if ($Apache::inputtags::params{'tol'}) { |
if ($Apache::inputtags::params{'tol'}) { |
($high,$low)=&get_tolrange($element,$Apache::inputtags::params{'tol'}); |
($high,$low)=&get_tolrange($element,$Apache::inputtags::params{'tol'}); |
} |
} |
if ($target eq 'answer') { |
if ($fmt && $tag eq 'numericalresponse') { |
if ($fmt && $tag eq 'numericalresponse') { |
$fmt=~s/e/E/g; |
$fmt=~s/e/E/g; |
if ($unit=~/\$/) { $fmt="\$".$fmt; $unit=~s/\$//g; } |
if ($unit=~/\$/) { $fmt="\$".$fmt; $unit=~s/\$//g; } |
Line 573 sub end_numericalresponse {
|
Line 578 sub end_numericalresponse {
|
} |
} |
} |
} |
push(@all_answer_info,$element); |
push(@all_answer_info,$element); |
|
|
|
} elsif ($target eq 'analyze') { |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.answer"}{$name}[$i] }, $element); |
|
if ($high) { |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.ans_high"}{$name}[$i] }, $high); |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.ans_low"}{$name}[$i] }, $low); |
|
} |
|
if ($fmt) { |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.format"}{$name}[$i] }, $fmt); |
|
} |
} |
} |
|
} |
|
if ($target eq 'answer') { |
$result.= &Apache::response::answer_part($tag,join(', ',@all_answer_info)); |
$result.= &Apache::response::answer_part($tag,join(', ',@all_answer_info)); |
} elsif ($target eq 'analyze') { |
|
my ($high,$low); |
|
if ($Apache::inputtags::params{'tol'}) { |
|
($high,$low)=&get_tolrange($ans,$Apache::inputtags::params{'tol'}); |
|
} |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.answer"} }, $ans); |
|
if ($high) { |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.ans_high"} }, $high); |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.ans_low"} }, $low); |
|
} |
|
if ($fmt) { |
|
push (@{ $Apache::lonhomework::analyze{"$part_id.format"} }, $fmt); |
|
} |
|
} |
} |
} |
} |
|
|
Line 1005 sub end_stringresponse {
|
Line 1009 sub end_stringresponse {
|
} |
} |
} |
} |
} elsif ($target eq 'answer' || $target eq 'analyze') { |
} elsif ($target eq 'answer' || $target eq 'analyze') { |
|
&add_in_tag_answer($parstack,$safeeval); |
if ($target eq 'analyze') { |
if ($target eq 'analyze') { |
push (@{ $Apache::lonhomework::analyze{"parts"} },"$part.$id"); |
push (@{ $Apache::lonhomework::analyze{"parts"} },"$part.$id"); |
$Apache::lonhomework::analyze{"$part.$id.type"} = 'stringresponse'; |
$Apache::lonhomework::analyze{"$part.$id.type"} = 'stringresponse'; |
Line 1015 sub end_stringresponse {
|
Line 1020 sub end_stringresponse {
|
if ($target eq 'answer') { |
if ($target eq 'answer') { |
$result.=&Apache::response::answer_header('stringresponse'); |
$result.=&Apache::response::answer_header('stringresponse'); |
} |
} |
# foreach my $ans (@answers) { |
foreach my $name (keys(%answer)) { |
if ($target eq 'answer') { |
my @answers = @{ $answer{$name}{'answers'} }; |
$result.=&Apache::response::answer_part('stringresponse',$answer); |
for (my $i=0;$i<=$#answers;$i++) { |
if ($type eq 're') { |
my $answer_part = $answers[$i]; |
|
foreach my $element (@{$answer_part}) { |
|
if ($target eq 'answer') { |
|
$result.=&Apache::response::answer_part('stringresponse', |
|
$element); |
|
} elsif ($target eq 'analyze') { |
|
push (@{ $Apache::lonhomework::analyze{"$part.$id.answer"}{$name}[$i] }, |
|
$element); |
|
} |
|
} |
|
if ($target eq 'answer' && $type eq 're') { |
$result.=&Apache::response::answer_part('stringresponse', |
$result.=&Apache::response::answer_part('stringresponse', |
$answerdisplay); |
$answerdisplay); |
} |
} |
} elsif ($target eq 'analyze') { |
|
push (@{ $Apache::lonhomework::analyze{"$part.$id.answer"} }, |
|
$answer); |
|
} |
} |
# } |
} |
my $string='Case Insensitive'; |
my $string='Case Insensitive'; |
if ($type eq 'mc') { |
if ($type eq 'mc') { |
$string='Multiple Choice'; |
$string='Multiple Choice'; |