--- loncom/homework/radiobuttonresponse.pm 2003/10/27 20:04:34 1.79 +++ loncom/homework/radiobuttonresponse.pm 2004/03/05 19:44:18 1.82 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # mutliple choice style responses # -# $Id: radiobuttonresponse.pm,v 1.79 2003/10/27 20:04:34 albertel Exp $ +# $Id: radiobuttonresponse.pm,v 1.82 2004/03/05 19:44:18 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -46,7 +46,9 @@ sub start_radiobuttonresponse { $result=&Apache::response::meta_package_write('radiobuttonresponse'); } elsif ($target eq 'edit' ) { $result.=&Apache::edit::start_table($token). - ''.&Apache::lonxml::description($token)."Delete:". + ''.&Apache::lonxml::description($token). + &Apache::loncommon::help_open_topic('Radio_Response_Problems'). + "Delete:". &Apache::edit::deletelist($target,$token) ." ".&Apache::edit::end_row() .&Apache::edit::start_spanning_row(); @@ -158,11 +160,13 @@ sub end_foilgroup { $target eq 'tex' || $target eq 'analyze') { my $style = $Apache::lonhomework::type; if ( $style eq 'survey' && $target ne 'analyze') { - if ($target eq 'web' || $target eq 'answer' || $target eq 'tex') { - $result=&displayallfoils(); - } elsif ( $target eq 'grade' ) { - $result=&storesurvey(); - } + if ($target eq 'web' || $target eq 'tex') { + $result=&displayallfoils(); + } elsif ( $target eq 'answer' ) { + $result=&displayallanswers(); + } elsif ( $target eq 'grade' ) { + $result=&storesurvey(); + } } else { my $name; my $max = &Apache::lonxml::get_param('max',$parstack,$safeeval,'-2'); @@ -331,7 +335,7 @@ sub whichfoils { &Apache::lonxml::debug("Answer wants $answer"); my $truename=$truelist[$whichtrue]; my $dosplice=1; - if ($notrue) { + if ($notrue && $Apache::lonhomework::type ne 'survey') { $dosplice=0; &Apache::lonxml::error("There are no true statements available.
"); } @@ -431,6 +435,18 @@ sub displayfoils { return $result; } +sub displayallanswers { + my @names = @{ $Apache::response::foilgroup{'names'} }; + + my $result=&Apache::response::answer_header('radiobuttonresponse'); + foreach my $name (@names) { + $result.=&Apache::response::answer_part('radiobuttonresponse', + $Apache::response::foilgroup{$name.'.value'}); + } + $result.=&Apache::response::answer_footer('radiobuttonresponse'); + return $result; +} + sub displayanswers { my ($max,$randomize)=@_; my ($answer,@whichopt) = &whichfoils($max,$randomize);