version 1.102, 2005/06/22 12:03:23
|
version 1.105, 2005/12/06 10:03:57
|
Line 60 sub start_radiobuttonresponse {
|
Line 60 sub start_radiobuttonresponse {
|
$token,'4'). |
$token,'4'). |
&Apache::edit::select_arg('Randomize Foil Order','randomize', |
&Apache::edit::select_arg('Randomize Foil Order','randomize', |
['yes','no'],$token). |
['yes','no'],$token). |
|
&Apache::edit::select_arg('Display Direction','direction', |
|
['vertical','horizontal'],$token). |
&Apache::edit::end_row(). |
&Apache::edit::end_row(). |
&Apache::edit::start_spanning_row()."\n"; |
&Apache::edit::start_spanning_row()."\n"; |
} elsif ($target eq 'modified') { |
} elsif ($target eq 'modified') { |
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
$safeeval,'max', |
$safeeval,'max', |
'randomize'); |
'randomize','direction'); |
if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } |
if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
my $type=&Apache::lonxml::get_param('TeXtype',$parstack,$safeeval, |
my $type=&Apache::lonxml::get_param('TeXtype',$parstack,$safeeval, |
Line 289 sub whichfoils {
|
Line 291 sub whichfoils {
|
my ($truecnt,$falsecnt) = &getfoilcounts(); |
my ($truecnt,$falsecnt) = &getfoilcounts(); |
my $count=0; |
my $count=0; |
# we will add in 1 of the true statements |
# we will add in 1 of the true statements |
if (($falsecnt+1)>$max) { $count=$max } else { $count=$falsecnt+1; } |
if ( $max>0 && ($falsecnt+1)>$max) { $count=$max } else { $count=$falsecnt+1; $max=$count; } |
my $answer=int(&Math::Random::random_uniform() * ($count)); |
my $answer=int(&Math::Random::random_uniform() * ($count)); |
&Apache::lonxml::debug("Count is $count, $answer is $answer"); |
&Apache::lonxml::debug("Count is $count, $answer is $answer"); |
my @names; |
my @names; |
Line 520 sub displayanswers {
|
Line 522 sub displayanswers {
|
my ($max,$randomize)=@_; |
my ($max,$randomize)=@_; |
my ($answer,@whichopt) = &whichfoils($max,$randomize); |
my ($answer,@whichopt) = &whichfoils($max,$randomize); |
my $result=&Apache::response::answer_header('radiobuttonresponse'); |
my $result=&Apache::response::answer_header('radiobuttonresponse'); |
|
if ($Apache::lonhomework::type eq 'exam') { |
|
my $correct = ('A'..'Z')[$answer]; |
|
$result.=&Apache::response::answer_part('radiobuttonresponse', |
|
$correct); |
|
} |
foreach my $name (@whichopt) { |
foreach my $name (@whichopt) { |
$result.=&Apache::response::answer_part('radiobuttonresponse', |
$result.=&Apache::response::answer_part('radiobuttonresponse', |
$Apache::response::foilgroup{$name.'.value'}) |
$Apache::response::foilgroup{$name.'.value'}); |
} |
} |
$result.=&Apache::response::answer_footer('radiobuttonresponse'); |
$result.=&Apache::response::answer_footer('radiobuttonresponse'); |
return $result; |
return $result; |
} |
} |