[LON-CAPA-cvs] cvs: loncom /homework optionresponse.pm

www www@source.lon-capa.org
Fri, 05 Feb 2010 20:54:33 -0000


www		Fri Feb  5 20:54:33 2010 EDT

  Modified files:              
    /loncom/homework	optionresponse.pm 
  Log:
  More work on 2294: provide list of choices
  
  
Index: loncom/homework/optionresponse.pm
diff -u loncom/homework/optionresponse.pm:1.159 loncom/homework/optionresponse.pm:1.160
--- loncom/homework/optionresponse.pm:1.159	Fri Feb  5 15:34:02 2010
+++ loncom/homework/optionresponse.pm	Fri Feb  5 20:54:33 2010
@@ -1,7 +1,7 @@
 # LearningOnline Network with CAPA
 # option list style responses
 #
-# $Id: optionresponse.pm,v 1.159 2010/02/05 15:34:02 www Exp $
+# $Id: optionresponse.pm,v 1.160 2010/02/05 20:54:33 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -359,6 +359,11 @@
     return $result;
 }
 
+sub check_box_opt {
+# Check if we are in checkbox mode. If so, return "checked" value
+    return '';
+}
+
 sub check_for_invalid {
     my ($names,$options) = @_;
     my %bad_names;
@@ -427,6 +432,11 @@
     my $temp=1;
     my %lastresponse=&Apache::lonnet::str2hash($Apache::lonhomework::history{"resource.$part.$id.submission"});
     my $internal_counter=$Apache::lonxml::counter;
+    my $checkboxopt=&check_box_opt();
+    if ($checkboxopt) {
+       $result.='<br />'.&mt('Choices: ').'<b>'.$opt[0].','.$opt[1].'</b>. '.
+                &mt('Select all that are <b>[_1]</b>.',$checkboxopt);
+    }
     foreach $name (@whichopt) {
       my $text=$Apache::response::foilgroup{$name.'.text'};
       if ($text!~/^\s*$/) {
@@ -463,9 +473,6 @@
               }
           }
       }
-# debug for checkbox
-      my $checkboxopt='';
-# end debug for checkbox
       if ($target ne 'tex') {
 	  if ($Apache::lonhomework::type ne 'exam') {
 # we are on the web, this is not an exam, and the problem can be answered
@@ -487,8 +494,8 @@
 # defopt is what the field is going to start out with: either previous choice or altopt
 # fieldname is this input field's name after HWVAL_
                   $optionlist='<input type="hidden" name="HWVAL_'.$fieldname.'" value="'.$escdefopt.'" />'.
-                  '<label><input type="checkbox" name="HWCHK_'.$fieldname.'" onclick="javascript:if (this.form.elements[\'HWCHK_'.
-                  $fieldname.'\'].checked) { this.form.elements[\'HWVAL_'.$fieldname.'\'].value=\''.$esccheckboxopt.'\'; } else { this.form.elements[\'HWVAL_'.$fieldname.'\'].value=\''.$escaltopt.'\'; };setSubmittedPart(\''.$part.'\');"'.($defopt eq $checkboxopt?' checked="checked"':'').' /><i>'.$checkboxopt.":</i></label>\n";
+                  '<input type="checkbox" name="HWCHK_'.$fieldname.'" onclick="javascript:if (this.form.elements[\'HWCHK_'.
+                  $fieldname.'\'].checked) { this.form.elements[\'HWVAL_'.$fieldname.'\'].value=\''.$esccheckboxopt.'\'; } else { this.form.elements[\'HWVAL_'.$fieldname.'\'].value=\''.$escaltopt.'\'; };setSubmittedPart(\''.$part.'\');"'.($defopt eq $checkboxopt?' checked="checked"':'')." />\n";
               } else {
 # classic selection list
 	          $optionlist='<select onchange="javascript:setSubmittedPart(\''.