Diff for /loncom/homework/rankresponse.pm between versions 1.67 and 1.74

version 1.67, 2011/09/16 22:23:54 version 1.74, 2018/06/07 15:58:11
Line 51  sub start_rankresponse { Line 51  sub start_rankresponse {
  $result=&Apache::response::meta_package_write('rankresponse');   $result=&Apache::response::meta_package_write('rankresponse');
     } elsif ($target eq 'edit' ) {      } elsif ($target eq 'edit' ) {
  $result.=&Apache::edit::start_table($token)   $result.=&Apache::edit::start_table($token)
            .'<tr><td>'.&Apache::lonxml::description($token).'</td>'             .'<tr><td>'.&Apache::loncommon::insert_folding_button()
              .&Apache::lonxml::description($token).'</td>'
            .'<td><span class="LC_nobreak">'.&mt('Delete?').' '             .'<td><span class="LC_nobreak">'.&mt('Delete?').' '
            .&Apache::edit::deletelist($target,$token)             .&Apache::edit::deletelist($target,$token)
            .'</span></td>'             .'</span></td>'
Line 186  sub get_correct_order { Line 187  sub get_correct_order {
   
 sub displayanswers {  sub displayanswers {
     my ($max,$randomize,$tol,@opt)=@_;      my ($max,$randomize,$tol,@opt)=@_;
     if (!defined(@{ $Apache::response::foilgroup{'names'} })) { return; }      my @names;
     my @names = @{ $Apache::response::foilgroup{'names'} };      if (ref($Apache::response::foilgroup{'names'}) eq 'ARRAY') {
           @names = @{ $Apache::response::foilgroup{'names'} };
       }
       return if (!@names);
     my @whichfoils = &whichfoils($max,$randomize);      my @whichfoils = &whichfoils($max,$randomize);
     my @correctorder=&get_correct_order($tol,@whichfoils);      my @correctorder=&get_correct_order($tol,@whichfoils);
     my $result;      my $result;
Line 332  sub format_prior_answer { Line 336  sub format_prior_answer {
     my %grading     =&Apache::lonnet::str2hash($other_data->[1]);      my %grading     =&Apache::lonnet::str2hash($other_data->[1]);
     my $output;      my $output;
     foreach my $name (@{ $foil_order }) {      foreach my $name (@{ $foil_order }) {
  next if (!defined($lastresponse{$name}));          if (defined($lastresponse{$name})) {
  $output .= '<tr><td>'.$lastresponse{$name}.'</td></tr>';              $output .= '<tr><td>'.&HTML::Entities::encode($lastresponse{$name},'<>&"').'</td></tr>';
           } else {
               $output .= '<tr><td>&nbsp;</td></tr>';
           }
     }      }
     return if (!defined($output));      return if (!defined($output));
     $output =      $output =
Line 355  sub displayfoils { Line 362  sub displayfoils {
     my $text=$Apache::response::foilgroup{$name.'.text'};      my $text=$Apache::response::foilgroup{$name.'.text'};
     my $value=shift(@correctorder);      my $value=shift(@correctorder);
     if ($target eq 'web') {      if ($target eq 'web') {
  $result.='<br /><b>'.$value.':</b> '.$text;   $result.='<div class="LC_rankfoil"><b>'.$value.':</b> '.$text.'</div>';
     } else {      } else {
  $result.=' \strut\\\\\strut '.$value.':'.$text;   $result.=' \strut\\\\\strut '.$value.':'.$text;
     }      }
Line 374  sub displayfoils { Line 381  sub displayfoils {
                 $newvariation = 1;                  $newvariation = 1;
             }              }
         }          }
         unless (((($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurvey') || ($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurveycred')) && (defined($env{'form.grade_symb'}))) || $newvariation) {          unless ($newvariation) {
             $lastresponse=$Apache::lonhomework::history{"resource.$part.$id.submission"};              if ((($env{'form.grade_username'} eq '') && ($env{'form.grade_domain'} eq '')) ||
                   (($env{'form.grade_username'} eq $env{'user.name'}) &&
                    ($env{'form.grade_domain'} eq $env{'user.domain'}))) {
                   $lastresponse=$Apache::lonhomework::history{"resource.$part.$id.submission"};
               } else {
                   unless (($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurvey') ||
                           ($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurveycred')) {
                       $lastresponse=$Apache::lonhomework::history{"resource.$part.$id.submission"};
                   }
               }
         }          }
  my %lastresponse=&Apache::lonnet::str2hash($lastresponse);    my %lastresponse=&Apache::lonnet::str2hash($lastresponse); 
  my @alp = splice @alphabet, 0, $#whichopt + 1;   my @alp = splice @alphabet, 0, $#whichopt + 1;
Line 394  sub displayfoils { Line 410  sub displayfoils {
     my $lastopt=$lastresponse{$name};      my $lastopt=$lastresponse{$name};
     my $optionlist='';      my $optionlist='';
     if ($target ne 'tex') {      if ($target ne 'tex') {
                 $optionlist = "<option></option>\n";                  $optionlist = "<option value=\"\"></option>\n";
             }               } 
             if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') {              if ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') {
                 my $fieldname = $env{'request.symb'}.'&part_'.$Apache::inputtags::part.'&rankresponse'.'&HWVAL_'.$Apache::inputtags::response['-1'].':'.$temp;                  my $fieldname = $env{'request.symb'}.'&part_'.$Apache::inputtags::part.'&rankresponse'.'&HWVAL_'.$Apache::inputtags::response['-1'].':'.$temp;
Line 404  sub displayfoils { Line 420  sub displayfoils {
     foreach $option (@whichopt) {      foreach $option (@whichopt) {
  if ($option eq $lastopt) {   if ($option eq $lastopt) {
     if ($target ne 'tex' ) {      if ($target ne 'tex' ) {
                         $optionlist.="<option selected=\"selected\">$option</option>\n";                          $optionlist.="<option value=\"$option\" selected=\"selected\">$option</option>\n";
                     } elsif ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') {                      } elsif ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') {
                         $optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option);                           $optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option); 
                     }                      }
  } else {   } else {
     if ($target ne 'tex') {      if ($target ne 'tex') {
                         $optionlist.="<option>$option</option>\n";                          $optionlist.="<option value=\"$option\">$option</option>\n";
                     } elsif ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') {                      } elsif ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes') {
                         $optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option);                           $optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option); 
                     }                      }
Line 428  sub displayfoils { Line 444  sub displayfoils {
     }      }
     my $text=$Apache::response::foilgroup{$name.'.text'};      my $text=$Apache::response::foilgroup{$name.'.text'};
     if ($target ne 'tex') {      if ($target ne 'tex') {
                   $result .= '<div class="LC_rankfoil">';
  if ($Apache::lonhomework::type ne 'exam') {   if ($Apache::lonhomework::type ne 'exam') {
     $result.='<br />'.$optionlist.$text."\n";      $result.=$optionlist.$text."\n";
  } else {   } else {
     $result.='<br />'.$text."\n";      $result.=$text."\n";
  }   }
  if ($Apache::lonhomework::type eq 'exam') {   if ($Apache::lonhomework::type eq 'exam') {
     my @values=(1..scalar(@whichopt));      my @values=(1..scalar(@whichopt));
     $result.=&Apache::optionresponse::webbubbles(\@values,\@whichopt,$temp,$lastopt);      $result.=&Apache::optionresponse::webbubbles(\@values,\@whichopt,$temp,$lastopt);
  }   }
                   $result .= '</div>';
     } else {      } else {
  if ($Apache::lonhomework::type eq 'exam') {   if ($Apache::lonhomework::type eq 'exam') {
                     my $itemlabel;                      my $itemlabel;

Removed from v.1.67  
changed lines
  Added in v.1.74


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