--- loncom/homework/optionresponse.pm 2008/11/12 20:32:29 1.154 +++ loncom/homework/optionresponse.pm 2010/02/05 15:34:02 1.159 @@ -1,7 +1,7 @@ # LearningOnline Network with CAPA # option list style responses # -# $Id: optionresponse.pm,v 1.154 2008/11/12 20:32:29 jms Exp $ +# $Id: optionresponse.pm,v 1.159 2010/02/05 15:34:02 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -27,108 +27,7 @@ # -=head1 NAME - -Apache::optionresponse.pm; - -=head1 SYNOPSIS - -Handles tags associated with showing a list of -options. - -This is part of the LearningOnline Network with CAPA project -described at http://www.lon-capa.org. - -=head1 HANDLER SUBROUTINE - -start_optionresponse() - -=head1 OTHER SUBROUTINES - -=over - -=item * - -end_optionresponse() - -=item * - -start_foilgroup() - -=item * - -end_foilgroup() - -=item * - -getfoilcounts() - -=item * - -displayanswers() - -=item * - -check_for_invalid() - -=item * - -displayfoils() - -=item * - -optionlist_correction() - -=item * - -webbubbles() - -=item * - -bubbles() - -=item * - -start_conceptgroup() - -=item * - -end_conceptgroup() - -=item * - -insert_conceptgroup() - - -=item * - -start_foil() - -=item * - -end_foil() - -=item * - -start_drawoptionlist() - -=item * - -end_drawoptionlist() -=item * - -insert_foil() - -=item * - -insert_drawoptionlist() - -=item * - -=back - -=cut package Apache::optionresponse; @@ -166,8 +65,8 @@ sub start_optionresponse { &Apache::edit::select_arg('Randomize Foil Order:','randomize', ['yes','no'],$token). &Apache::edit::select_arg(&mt('Display of options when printed'),'TeXlayout', - [['horizontal',&mt('Normal list')], - ['vertical',&mt('Listed in a vertical column')]],$token). + [['horizontal','Normal list'], + ['vertical','Listed in a vertical column']],$token). &Apache::edit::end_row().&Apache::edit::start_spanning_row(); } elsif ($target eq 'modified') { my $constructtag=&Apache::edit::get_new_args($token,$parstack, @@ -540,7 +439,8 @@ sub displayfoils { my $lastopt=$lastresponse{$name}; my $optionlist="\n"; - if($target eq 'tex' and $env{'form.pdfFormFields'} eq 'yes') { + if($target eq 'tex' and $env{'form.pdfFormFields'} eq 'yes' + && $Apache::inputtags::status[-1] eq 'CAN_ANSWER') { my $fieldname = $env{'request.symb'}.'&part_'.$Apache::inputtags::part.'&optionresponse'.'&HWVAL_'.$Apache::inputtags::response['-1'].':'.$temp; $optionlist = &Apache::lonxml::print_pdf_start_combobox($fieldname); } @@ -548,25 +448,54 @@ sub displayfoils { foreach my $option (@opt) { my $escopt=&HTML::Entities::encode($option,'\'"&<>'); if ($option eq $lastopt) { - if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') { + if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes' + && $Apache::inputtags::status[-1] eq 'CAN_ANSWER') { $optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option); } else { $optionlist.="\n"; } } else { - if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') { + if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes' + && $Apache::inputtags::status[-1] eq 'CAN_ANSWER') { $optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option); } else { $optionlist.="\n"; } } } +# debug for checkbox + my $checkboxopt=''; +# end debug for checkbox if ($target ne 'tex') { if ($Apache::lonhomework::type ne 'exam') { - $optionlist=''. + '\n"; + } else { +# classic selection list + $optionlist='\n"; + } } else { $optionlist=''.(' 'x10).''; } @@ -617,9 +546,9 @@ sub displayfoils { '\end{enumerate} \vskip -8 mm \strut '; $internal_counter++; } - if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') { - $text =~ s/.*indent(.*)$/$1/; - $text = $1; + if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes' + && $Apache::inputtags::status[-1] eq 'CAN_ANSWER') { + $text =~ s/\\item//m; $result .= " $optionlist ". &Apache::lonxml::print_pdf_end_combobox($text).'\strut \\\\'; $temp++; } @@ -882,3 +811,64 @@ sub insert_drawoptionlist { 1; __END__ +=head1 NAME + +Apache::optionresponse.pm; + +=head1 SYNOPSIS + +Handles tags associated with showing a list of +options. + +This is part of the LearningOnline Network with CAPA project +described at http://www.lon-capa.org. + +=head1 HANDLER SUBROUTINE + +start_optionresponse() + +=head1 OTHER SUBROUTINES + +=over + +=item end_optionresponse() + +=item start_foilgroup() + +=item end_foilgroup() + +=item getfoilcounts() + +=item displayanswers() + +=item check_for_invalid() + +=item displayfoils() + +=item optionlist_correction() + +=item webbubbles() + +=item bubbles() + +=item start_conceptgroup() + +=item end_conceptgroup() + +=item insert_conceptgroup() + +=item start_foil() + +=item end_foil() + +=item start_drawoptionlist() + +=item end_drawoptionlist() + +=item insert_foil() + +=item insert_drawoptionlist() + +=back + +=cut