version 1.103, 2005/06/27 21:51:29
|
version 1.106, 2006/03/27 21:18:16
|
Line 234 sub displayallfoils {
|
Line 234 sub displayallfoils {
|
my ($direction)=@_; |
my ($direction)=@_; |
my $result; |
my $result; |
&Apache::lonxml::debug("survey style display"); |
&Apache::lonxml::debug("survey style display"); |
my @names = @{ $Apache::response::foilgroup{'names'} }; |
my @names; |
|
if ( $Apache::response::foilgroup{'names'} ) { |
|
@names= @{ $Apache::response::foilgroup{'names'} }; |
|
} |
my $temp=0; |
my $temp=0; |
my $id=$Apache::inputtags::response['-1']; |
my $id=$Apache::inputtags::response['-1']; |
my $part=$Apache::inputtags::part; |
my $part=$Apache::inputtags::part; |
Line 291 sub whichfoils {
|
Line 294 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 507 sub displayfoils {
|
Line 510 sub displayfoils {
|
} |
} |
|
|
sub displayallanswers { |
sub displayallanswers { |
my @names = @{ $Apache::response::foilgroup{'names'} }; |
my @names; |
|
if ( $Apache::response::foilgroup{'names'} ) { |
|
@names= @{ $Apache::response::foilgroup{'names'} }; |
|
} |
|
|
my $result=&Apache::response::answer_header('radiobuttonresponse'); |
my $result=&Apache::response::answer_header('radiobuttonresponse'); |
foreach my $name (@names) { |
foreach my $name (@names) { |
Line 522 sub displayanswers {
|
Line 528 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; |
} |
} |