Diff for /loncom/homework/inputtags.pm between versions 1.333.2.10 and 1.333.2.14

version 1.333.2.10, 2021/09/11 16:09:56 version 1.333.2.14, 2023/09/11 13:44:18
Line 450  sub start_textline { Line 450  sub start_textline {
  if ($addchars) {   if ($addchars) {
     $result.=&addchars('HWVAL_'.$id,$addchars);      $result.=&addchars('HWVAL_'.$id,$addchars);
  }   }
                   my $numrespclass;
  my $readonly=&Apache::lonxml::get_param('readonly',$parstack,   my $readonly=&Apache::lonxml::get_param('readonly',$parstack,
  $safeeval);   $safeeval);
  if (lc($readonly) eq 'yes'    if (lc($readonly) eq 'yes' 
Line 457  sub start_textline { Line 458  sub start_textline {
     $readonly=' readonly="readonly" ';      $readonly=' readonly="readonly" ';
  } else {   } else {
     $readonly='';      $readonly='';
                       if (($Apache::inputtags::status['-1'] eq 'CAN_ANSWER') &&
                           ($tagstack->[-2] eq 'numericalresponse')) {
                           $numrespclass = ' LC_numresponse_text';
                       }
  }   }
  my $name = 'HWVAL_'.$id;   my $name = 'HWVAL_'.$id;
                 my $itemid = 'HWVAL_'.$partid.'_'.$id;                  my $itemid = 'HWVAL_'.$partid.'_'.$id;
Line 469  sub start_textline { Line 474  sub start_textline {
      . ' type="text" '.$readonly.' name="'. $name . '"'       . ' type="text" '.$readonly.' name="'. $name . '"'
      . ' id="' . $input_tag_id . '"'       . ' id="' . $input_tag_id . '"'
      . ' value="'.  $oldresponse.'"'       . ' value="'.  $oldresponse.'"'
      . ' class="LC_textline spellchecked"  size="'.$size.'"'.$maxlength.' />';       . ' class="LC_textline spellchecked'.$numrespclass.'" size="'.$size.'"'.$maxlength.' />';
   
  $result .= &spellcheck_onblur($itemid, $spellcheck);   $result .= &spellcheck_onblur($itemid, $spellcheck);
                 if (($Apache::inputtags::status['-1'] eq 'CAN_ANSWER') &&                  if (($Apache::inputtags::status['-1'] eq 'CAN_ANSWER') &&
                     (($tagstack->[-2] eq 'formularesponse') || ($tagstack->[-2] eq 'mathresponse')) &&                      (((($tagstack->[-2] eq 'formularesponse') || ($tagstack->[-2] eq 'mathresponse')) &&
                     (&Apache::lonnet::EXT('resource.'.$partid.'_'.$id.'.turnoffeditor') ne 'yes')) {                        (&Apache::lonnet::EXT('resource.'.$partid.'_'.$id.'.turnoffeditor') ne 'yes')) ||
                        (($tagstack->[-2] eq 'customresponse') &&
                          (&Apache::lonnet::EXT('resource.'.$partid.'_'.$id.'.turnoffeditor') eq 'no')))) {
                     $result.=&edit_mathresponse_button($input_tag_id);                      $result.=&edit_mathresponse_button($input_tag_id);
                 }                  }
     }      }
Line 1152  sub decideoutput { Line 1159  sub decideoutput {
         if ($target ne 'tex') {          if ($target ne 'tex') {
            $message .= &Apache::loncommon::help_open_topic('Some_Items_Were_Not_Submitted');             $message .= &Apache::loncommon::help_open_topic('Some_Items_Were_Not_Submitted');
         }          }
  $css_class=$possible_class{'not_charged_try'};          if (&Apache::lonhomework::show_some_problem_status()) {
               $css_class=$possible_class{'no_charge_warn'};
           } else {
               $css_class=$possible_class{'not_charged_try'};
           }
  $button = 1;   $button = 1;
     } elsif ($award eq 'WRONG_NUMBOXESCHECKED') {      } elsif ($award eq 'WRONG_NUMBOXESCHECKED') {
         $message = &mt('Number of boxes checked outside permissible range (either too few or too many).');          $message = &mt('Number of boxes checked outside permissible range (either too few or too many).');
Line 1201  sub decideoutput { Line 1212  sub decideoutput {
     } elsif ($award eq 'SIG_FAIL') {      } elsif ($award eq 'SIG_FAIL') {
  my ($used,$min,$max)=split(':',$awardmsg);   my ($used,$min,$max)=split(':',$awardmsg);
  my $word = ($used < $min) ? 'more' : 'fewer';   my $word = ($used < $min) ? 'more' : 'fewer';
  $message = &mt("Submission not graded. Use $word significant figures.",$used);   $message = &mt("Submission not graded. Use $word significant figures.");
         if (&Apache::lonhomework::show_some_problem_status()) {          if (&Apache::lonhomework::show_some_problem_status()) {
             $css_class=$possible_class{'no_charge_warn'};              $css_class=$possible_class{'no_charge_warn'};
         } else {          } else {
Line 1216  sub decideoutput { Line 1227  sub decideoutput {
     } elsif ($award eq 'UNIT_INVALID_STUDENT') {      } elsif ($award eq 'UNIT_INVALID_STUDENT') {
  $message = &mt('Unable to interpret units. Computer reads units as "[_1]".',&markup_unit($awardmsg,$target));   $message = &mt('Unable to interpret units. Computer reads units as "[_1]".',&markup_unit($awardmsg,$target));
  if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units');}    if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units');} 
  $css_class=$possible_class{'not_charged_try'};          if (&Apache::lonhomework::show_some_problem_status()) {
               $css_class=$possible_class{'no_charge_warn'};
           } else {
               $css_class=$possible_class{'not_charged_try'};
           }
  $button=1;   $button=1;
     } elsif ($award eq 'UNIT_FAIL' || $award eq 'UNIT_IRRECONCIBLE') {      } elsif ($award eq 'UNIT_FAIL' || $award eq 'UNIT_IRRECONCIBLE') {
  $message = &mt('Incompatible units. No conversion found between "[_1]" and the required units.',&markup_unit($awardmsg,$target));   $message = &mt('Incompatible units. No conversion found between "[_1]" and the required units.',&markup_unit($awardmsg,$target));
  if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units');}    if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units');} 
  $css_class=$possible_class{'not_charged_try'};          if (&Apache::lonhomework::show_some_problem_status()) {
               $css_class=$possible_class{'no_charge_warn'};
           } else {
               $css_class=$possible_class{'not_charged_try'};
           }
  $button=1;   $button=1;
     } elsif ($award eq 'UNIT_NOTNEEDED') {      } elsif ($award eq 'UNIT_NOTNEEDED') {
  $message = &mt('Only a number required. Computer reads units of "[_1]".',&markup_unit($awardmsg,$target));   $message = &mt('Only a number required. Computer reads units of "[_1]".',&markup_unit($awardmsg,$target));
  $css_class=$possible_class{'not_charged_try'};          if (&Apache::lonhomework::show_some_problem_status()) {
               $css_class=$possible_class{'no_charge_warn'};
           } else {
               $css_class=$possible_class{'not_charged_try'};
           }
  $button=1;   $button=1;
     } elsif ($award eq 'NO_UNIT') {      } elsif ($award eq 'NO_UNIT') {
  $message = &mt("Units required").'.';   $message = &mt("Units required").'.';
  if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units')};   if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units')};
  $css_class=$possible_class{'not_charged_try'};          if (&Apache::lonhomework::show_some_problem_status()) {
               $css_class=$possible_class{'no_charge_warn'};
           } else {
               $css_class=$possible_class{'not_charged_try'};
           }
  $button=1;   $button=1;
     } elsif ($award eq 'COMMA_FAIL') {      } elsif ($award eq 'COMMA_FAIL') {
  $message = &mt("Proper comma separation is required").'.';   $message = &mt("Proper comma separation is required").'.';
Line 1879  sub previous_tries { Line 1906  sub previous_tries {
     my $prefix = $env{'form.request.prefix'};      my $prefix = $env{'form.request.prefix'};
     $prefix =~ tr{.}{_};      $prefix =~ tr{.}{_};
     my $function_name = 'LONCAPA_previous_tries_'.$prefix;      my $function_name = 'LONCAPA_previous_tries_'.$prefix;
     if (($env{'request.state'} eq 'construct') || ($id =~ /[._]|[^\w\s\-]/)) {      if (($env{'request.state'} eq 'construct') || ($id =~ /\W/)) {
         $function_name .= $Apache::lonxml::curdepth;          $function_name .= $Apache::lonxml::curdepth;
     } else {      } else {
         $function_name .= &js_escape($id);          $function_name .= $id;
     }      }
     $function_name .= '_'.$Apache::lonxml::counter;      $function_name .= '_'.$Apache::lonxml::counter;
     my $possmathjax = 1;      my $possmathjax = 1;

Removed from v.1.333.2.10  
changed lines
  Added in v.1.333.2.14


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>