version 1.91, 2003/04/08 04:00:23
|
version 1.92, 2003/04/08 04:17:13
|
Line 101 sub end_numericalresponse {
|
Line 101 sub end_numericalresponse {
|
my %previous = &Apache::response::check_for_previous($response,$partid,$id); |
my %previous = &Apache::response::check_for_previous($response,$partid,$id); |
$Apache::lonhomework::results{"resource.$partid.$id.submission"}=$response; |
$Apache::lonhomework::results{"resource.$partid.$id.submission"}=$response; |
&Apache::lonxml::debug("submitted a $response<br>\n"); |
&Apache::lonxml::debug("submitted a $response<br>\n"); |
&Apache::lonxml::debug($$parstack[$#$parstack] . "\n<br>"); |
&Apache::lonxml::debug($$parstack[-1] . "\n<br>"); |
|
|
if ($ENV{'form.submitted'} eq 'scantron') { |
if ($ENV{'form.submitted'} eq 'scantron') { |
&Apache::response::setrandomnumber(); |
my $number_of_bubbles = 8;#default values for number of bubbles |
#FIXME the 8 here is based off of number of powers need a parameter |
my (@formats)=&Apache::lonxml::get_param_var('format', |
my $ind=&Math::Random::random_uniform_integer(1,0,8); |
$parstack,$safeeval); |
if ($ind eq $response) { $ad='CORRECT'; } else { $ad='INCORRECT'; } |
my (@answers)=&Apache::lonxml::get_param_var('answer', |
|
$parstack,$safeeval); |
|
my @values=&make_numerical_bubbles($number_of_bubbles,$target, |
|
$answers[0],$formats[0]); |
|
$response=$values[$response]; |
|
} else { |
|
$response =~ s/\\/\\\\/g; |
|
$response =~ s/\'/\\\'/g; |
} |
} |
$response =~ s/\\/\\\\/g; |
|
$response =~ s/\'/\\\'/g; |
|
&Apache::lonxml::debug("current $response"); |
&Apache::lonxml::debug("current $response"); |
my $expression="&caparesponse_check_list('".$response."','". |
my $expression="&caparesponse_check_list('".$response."','". |
$$parstack[-1]; |
$$parstack[-1]; |
|
#no way to enter units, with radio buttons |
|
if ($Apache::lonhomework::type eq 'exam') { |
|
$expression.=';my $unit=undef;'; |
|
} |
foreach my $key (keys(%Apache::inputtags::params)) { |
foreach my $key (keys(%Apache::inputtags::params)) { |
$expression.= ';my $'. #' |
$expression.= ';my $'. #' |
$key.'="'.$Apache::inputtags::params{$key}.'"'; |
$key.'="'.$Apache::inputtags::params{$key}.'"'; |
Line 143 sub end_numericalresponse {
|
Line 152 sub end_numericalresponse {
|
$safeeval); |
$safeeval); |
my $unit=&Apache::lonxml::get_param_var('unit',$parstack, |
my $unit=&Apache::lonxml::get_param_var('unit',$parstack, |
$safeeval); |
$safeeval); |
|
|
if ($target eq 'web') { |
if ($target eq 'web') { |
$result="<br />The correct answer is "; |
$result="<br />The correct answer is "; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |