Diff for /loncom/interface/statistics/lonstudentsubmissions.pm between versions 1.40 and 1.44

version 1.40, 2005/04/07 06:56:24 version 1.44, 2006/05/05 20:03:43
Line 190  sub get_headers { Line 190  sub get_headers {
             shift(@basic_headers);  # Get rid of 'Correct'              shift(@basic_headers);  # Get rid of 'Correct'
         }          }
         @headers = (@foils,@basic_headers);          @headers = (@foils,@basic_headers);
       } elsif (lc($resptype) eq 'task') {
           @headers = ('Grader','Status',@basic_headers,'Submission');
     } else {      } else {
         @headers = ('Submission',@basic_headers);          @headers = ('Submission',@basic_headers);
     }      }
Line 263  sub prepare_html_output { Line 265  sub prepare_html_output {
                                                           '</nobr></th>';                                                            '</nobr></th>';
                 }                  }
             }              }
               if ($part_span == 0) {
                   next;
               }
             if (! $single_part) {              if (! $single_part) {
                 my $tmpname = $partid;                  my $tmpname = $partid;
                 if ($partid =~/^\d+$/) {                  if ($partid =~/^\d+$/) {
Line 340  sub prepare_html_output { Line 345  sub prepare_html_output {
                                                'html','normal',                                                 'html','normal',
                                                @extra_resp_headers);                                                 @extra_resp_headers);
                     my $width = scalar(@headers);                      my $width = scalar(@headers);
                       next if ($width < 1);
                     my $resp_data;                      my $resp_data;
                     $resp_data->{'fake'} = qq{<td colspan="$width">&nbsp</td>};                      $resp_data->{'fake'} = qq{<td colspan="$width">&nbsp;</td>};
                     if (! defined($results)) {                      if (! defined($results)) {
                         $results = [];                          $results = [];
                     }                      }
Line 365  sub prepare_html_output { Line 371  sub prepare_html_output {
                                                      $response,                                                       $response,
                                                      $single_response).                                                       $single_response).
                                  '</td>');                                   '</td>');
    } elsif (lc($resptype) eq 'task') {
       my $results = 
    &html_task_results(\@headers,
      $prob,$partid,$respid,
      $response,$resptype);
       if ($results) {
    push(@{$resp_data->{'real'}},$results);
       }
                         } else {                          } else {
                             push(@{$resp_data->{'real'}},                              push(@{$resp_data->{'real'}},
                                  &html_non_essay_results(\@headers,                                   &html_non_essay_results(\@headers,
Line 438  sub hashify_response { Line 452  sub hashify_response {
     }      }
     $resp_hash->{'Submission'} =       $resp_hash->{'Submission'} = 
         $response->[&Apache::loncoursedata::RDs_submission()];          $response->[&Apache::loncoursedata::RDs_submission()];
     $resp_hash->{'Award Detail'} =   
         $response->[&Apache::loncoursedata::RDs_awarddetail()];  
     $resp_hash->{'Time'} =       $resp_hash->{'Time'} = 
         $response->[&Apache::loncoursedata::RDs_timestamp()];          $response->[&Apache::loncoursedata::RDs_timestamp()];
     $resp_hash->{'Attempt'} =      $resp_hash->{'Attempt'} =
         $response->[&Apache::loncoursedata::RDs_tries()];          $response->[&Apache::loncoursedata::RDs_tries()];
     $resp_hash->{'Awarded'} =       $resp_hash->{'Awarded'} = 
         $response->[&Apache::loncoursedata::RDs_awarded()];          $response->[&Apache::loncoursedata::RDs_awarded()];
       if ($prob->is_task()) {
    $resp_hash->{'Grader'} = 
       $response->[&Apache::loncoursedata::RDs_response_eval_2()];
    if ($resp_hash->{'Attempt'} eq '0') {
       $resp_hash->{'Attempt'} = '';
    }
    $resp_hash->{'Award Detail'} = 
       $response->[&Apache::loncoursedata::RDs_part_award()];
    $resp_hash->{'Status'} = 
       $response->[&Apache::loncoursedata::RDs_response_eval()];
       } else {
    $resp_hash->{'Award Detail'} = 
       $response->[&Apache::loncoursedata::RDs_awarddetail()];
       }
   
     return $resp_hash;      return $resp_hash;
 }  }
   
Line 508  sub html_format_essay_sub { Line 535  sub html_format_essay_sub {
     return $submission;      return $submission;
 }  }
   
   sub html_task_results {
       my ($headers,$prob,$partid,$respid,$response,$resptype) = @_;
       if (! ref($headers) || ref($headers) ne 'ARRAY' || ! scalar(@$headers)) {
           return '';
       }
   
       my @values;
       @values = map { $response->{$_}; } @$headers;
   
       my $td = '<td valign="top">';
       my $str = $td.join('</td>'.$td,@values).'</td>';
       return $str;
   }
   
 sub html_non_essay_results {  sub html_non_essay_results {
     my ($headers,$prob,$partid,$respid,$response,$resptype) = @_;      my ($headers,$prob,$partid,$respid,$response,$resptype) = @_;
     if (! ref($headers) || ref($headers) ne 'ARRAY' || ! scalar(@$headers)) {      if (! ref($headers) || ref($headers) ne 'ARRAY' || ! scalar(@$headers)) {
         return '';          return '';
     }      }
     #       # 
     my $submission = &HTML::Entities::decode($response->{'Submission'});      my $submission = &HTML::Entities::decode(&Apache::lonnet::unescape($response->{'Submission'})); 
     return '' if (! defined($submission) || $submission eq '');      return '' if (! defined($submission) || $submission eq '');
     $submission =~ s/\\\"/\"/g;      $submission =~ s/\\\"/\"/g;
     $submission =~ s/\\\'/\'/g;      $submission =~ s/\\\'/\'/g;
Line 788  sub compile_response_data { Line 829  sub compile_response_data {
     my $submission =       my $submission = 
         &HTML::Entities::decode          &HTML::Entities::decode
         (&Apache::lonnet::unescape($response->{'Submission'}));          (&Apache::lonnet::unescape($response->{'Submission'}));
     return () if (! defined($submission) || $submission eq '');      if (!$prob->is_task()) {
    return () if (! defined($submission) || $submission eq '');
       }
     $submission =~ s/\\\"/\"/g;      $submission =~ s/\\\"/\"/g;
     $submission =~ s/\\\'/\'/g;      $submission =~ s/\\\'/\'/g;
     if ($resptype eq 'radiobutton') {      if ($resptype eq 'radiobutton') {
Line 1038  sub CreateInterface { Line 1081  sub CreateInterface {
     ##      ##
     ## Environment variable initialization      ## Environment variable initialization
     my $Str = '';      my $Str = '';
     $Str .= &Apache::lonhtmlcommon::breadcrumbs      $Str .= &Apache::lonhtmlcommon::breadcrumbs('Student Submission Reports');
         (undef,'Student Submission Reports');  
     $Str .= '<p>';      $Str .= '<p>';
     $Str .= '<table cellspacing="5">'."\n";      $Str .= '<table cellspacing="5">'."\n";
     $Str .= '<tr>';      $Str .= '<tr>';
     $Str .= '<th>'.&mt('Sections').'</th>';      $Str .= '<th>'.&mt('Sections').'</th>';
       $Str .= '<th>'.&mt('Groups').'</th>';
     $Str .= '<th>'.&mt('Enrollment Status').'</th>';      $Str .= '<th>'.&mt('Enrollment Status').'</th>';
     $Str .= '<th>'.&mt('Output as [_1]',$output_selector).'</th>';      $Str .= '<th>'.&mt('Output as [_1]',$output_selector).'</th>';
     $Str .= '</tr>'."\n";      $Str .= '</tr>'."\n";
Line 1052  sub CreateInterface { Line 1095  sub CreateInterface {
     $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);      $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);
     $Str .= '</td>';      $Str .= '</td>';
     #      #
       $Str .= '<td align="center">'."\n";
       $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5);
       $Str .= '</td>';
       #
     $Str .= '<td align="center">';      $Str .= '<td align="center">';
     $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);      $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);
     $Str .= '</td>';      $Str .= '</td>';
Line 1102  sub CreateInterface { Line 1149  sub CreateInterface {
     $Str .= '</tr>'."\n";      $Str .= '</tr>'."\n";
     $Str .= '</table>'."\n";      $Str .= '</table>'."\n";
     #      #
     $Str .= '<nobr>'.&mt('Status: [_1]',      $Str .= '<p><nobr>'.&mt('Status: [_1]',
                          '<input type="text" '.                           '<input type="text" '.
                          'name="stats_status" size="60" value="" />').                           'name="stats_status" size="60" value="" />').
             '</nobr>'.'</p>';                  '</nobr>'.'</p>';    

Removed from v.1.40  
changed lines
  Added in v.1.44


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