--- loncom/homework/radiobuttonresponse.pm 2008/09/05 12:50:45 1.135 +++ loncom/homework/radiobuttonresponse.pm 2008/12/11 02:16:46 1.140 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # mutliple choice style responses # -# $Id: radiobuttonresponse.pm,v 1.135 2008/09/05 12:50:45 onken Exp $ +# $Id: radiobuttonresponse.pm,v 1.140 2008/12/11 02:16:46 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -25,6 +25,8 @@ # http://www.lon-capa.org/ # + + package Apache::radiobuttonresponse; use strict; use HTML::Entities(); @@ -65,17 +67,19 @@ sub start_radiobuttonresponse { if ($target eq 'meta') { $result=&Apache::response::meta_package_write('radiobuttonresponse'); } elsif ($target eq 'edit' ) { - $result.=&Apache::edit::start_table($token). - ''.&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(); + $result.=&Apache::edit::start_table($token) + .''.&Apache::lonxml::description($token) + .&Apache::loncommon::help_open_topic('Radio_Response_Problems') + .'' + .''.&mt('Delete?').' ' + .&Apache::edit::deletelist($target,$token) + .'' + .' '.&Apache::edit::end_row() + .&Apache::edit::start_spanning_row(); $result.= &Apache::edit::text_arg('Max Number Of Shown Foils:','max', $token,'4'). - &Apache::edit::select_arg('Randomize Foil Order','randomize', + &Apache::edit::select_arg('Randomize Foil Order:','randomize', ['yes','no'],$token). &Apache::edit::select_arg('Display Direction','direction', ['vertical','horizontal'],$token). @@ -401,33 +405,6 @@ sub displayallfoils { return $result; } -=pod - -=item &whichfoils($max,$randomize) - -Randomizes the list of foils. -Respects - - each foils desire to be randomized - - the existance of Concept groups of foils (select 1 foil from each) - - and selects a single correct statement from all possilble true statments - - and limits it to a toal of $max foils - -WARNING: this routine uses the random number generator, it should only -be called once per target, otherwise it can cause randomness changes in -homework problems. - -Arguments - $max - maximum number of foils to select (including the true one) - (so a max of 5 is: 1 true, 4 false) - - $randomize - whether to randomize the listing of foils, by default - will randomize, only if randomize is 'no' will it not - -Returns - $answer - location in the array of the correct answer - @foils - array of foil names in to display order - -=cut sub whichfoils { my ($max,$randomize)=@_; @@ -831,4 +808,87 @@ sub insert_foil { } 1; __END__ + + + +=head1 NAME + +Apache::radiobuttonresponse + +=head1 SYNOPSIS + +Handles multiple-choice style responses. + +This is part of the LearningOnline Network with CAPA project +described at http://www.lon-capa.org. + +=head1 SUBROUTINES + +=over + +=item start_radiobuttonresponse() + +=item bubble_line_count() + +=item end_radiobuttonresponse() + +=item start_foilgroup() + +=item storesurvey() + +=item grade_response() + +=item end_foilgroup() + +=item getfoilcounts() + +=item format_prior_answer() + +=item displayallfoils() + +=item &whichfoils($max,$randomize) + +Randomizes the list of foils. +Respects + - each foils desire to be randomized + - the existance of Concept groups of foils (select 1 foil from each) + - and selects a single correct statement from all possilble true statments + - and limits it to a toal of $max foils + +WARNING: this routine uses the random number generator, it should only +be called once per target, otherwise it can cause randomness changes in +homework problems. + +Arguments + $max - maximum number of foils to select (including the true one) + (so a max of 5 is: 1 true, 4 false) + + $randomize - whether to randomize the listing of foils, by default + will randomize, only if randomize is 'no' will it not + +Returns + $answer - location in the array of the correct answer + @foils - array of foil names in to display order + +=item displayfoils() + +=item displayallanswers() + +=item displayanswers() + +=item start_conceptgroup() + +=item end_conceptgroup() + +=item insert_conceptgroup() + +=item start_foil() + +=item end_foil() + +=item insert_foil() + +=back + +=cut