--- loncom/homework/radiobuttonresponse.pm 2002/11/14 20:30:34 1.61 +++ loncom/homework/radiobuttonresponse.pm 2003/01/07 22:13:07 1.63 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # mutliple choice style responses # -# $Id: radiobuttonresponse.pm,v 1.61 2002/11/14 20:30:34 sakharuk Exp $ +# $Id: radiobuttonresponse.pm,v 1.63 2003/01/07 22:13:07 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -278,12 +278,11 @@ sub whichfoils { #pick a true statement my $whichtrue = int(&Math::Random::random_uniform() * ($#truelist+1)); &Apache::lonxml::debug("Max is $max, From $#truelist elms, picking $whichtrue"); - my $numinserted; my (@toplist, @bottomlist); my $topcount=0; # assign everyone to either toplist/bottomlist or whichfalse # which false is randomized, toplist bottomlist are in order - while ((($numinserted) < $max-1) && ($#falselist > -1)) { + while ((($#whichfalse) < $max-2) && ($#falselist > -1)) { &Apache::lonxml::debug("Have $#whichfalse max is $max"); my $afalse=int(&Math::Random::random_uniform() * ($#falselist+1)); &Apache::lonxml::debug("From $#falselist elms, picking $afalse"); @@ -345,7 +344,11 @@ sub displayfoils { my $result; my ($answer,@whichfoils)=&whichfoils($max,$randomize); - if ($Apache::lonhomework::history{"resource.$Apache::inputtags::part.solved"} =~ /^correct/ || ($Apache::inputtags::status[-1] eq 'SHOW_ANSWER')) { + my $part=$Apache::inputtags::part; + my $solved=$Apache::lonhomework::history{"resource.$part.solved"}; + my $status=$Apache::inputtags::status[-1]; + if ( ($target ne 'tex') && + (($solved =~ /^correct/) || ($status eq 'SHOW_ANSWER')) ) { foreach my $name (@whichfoils) { if ($target ne 'tex') { $result.="
";