Diff for /loncom/interface/statistics/lonstudentassessment.pm between versions 1.132 and 1.138

version 1.132, 2006/03/05 02:00:01 version 1.138, 2006/05/01 19:29:13
Line 50  Presents assessment data about a student Line 50  Presents assessment data about a student
 package Apache::lonstudentassessment;  package Apache::lonstudentassessment;
   
 use strict;  use strict;
 use Apache::lonstatistics;  use Apache::lonstatistics();
 use Apache::lonhtmlcommon;  use Apache::lonhtmlcommon();
 use Apache::loncommon();  use Apache::loncommon();
 use Apache::loncoursedata;  use Apache::loncoursedata;
 use Apache::lonnet; # for logging porpoises  use Apache::lonnet; # for logging porpoises
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::grades;  use Apache::grades();
   use Apache::lonmsgdisplay();
 use Time::HiRes;  use Time::HiRes;
 use Spreadsheet::WriteExcel;  use Spreadsheet::WriteExcel;
 use Spreadsheet::WriteExcel::Utility();  use Spreadsheet::WriteExcel::Utility();
Line 313  the chart page. Line 314  the chart page.
 #######################################################  #######################################################
 sub CreateInterface {  sub CreateInterface {
     my $Str = '';      my $Str = '';
     $Str .= &Apache::lonhtmlcommon::breadcrumbs(undef,'Chart');      $Str .= &Apache::lonhtmlcommon::breadcrumbs('Chart');
 #    $Str .= &CreateLegend();  #    $Str .= &CreateLegend();
     $Str .= '<table cellspacing="5">'."\n";      $Str .= '<table cellspacing="5">'."\n";
     $Str .= '<tr>';      $Str .= '<tr>';
Line 650  sub html_initialize { Line 651  sub html_initialize {
                   &mt('Unable to retrieve course information.').                    &mt('Unable to retrieve course information.').
                   '</h3>');                    '</h3>');
     }      }
   
       # If we're showing links, show a checkbox to open in new
       # windows.
       if ($show_links ne 'no') {
           $r->print(<<NEW_WINDOW_CHECKBOX);
   <script type="text/javascript">new_window = true;</script>
   <p><label>Show links in new window: 
   <input type="checkbox" checked="1" onclick="new_window=this.checked" />
   </label></p>
   NEW_WINDOW_CHECKBOX
       }
   
     #      #
     $r->print("<h3>".$env{'course.'.$env{'request.course.id'}.'.description'}.      $r->print("<h3>".$env{'course.'.$env{'request.course.id'}.'.description'}.
               "&nbsp;&nbsp;".localtime(time)."</h3>");                "&nbsp;&nbsp;".localtime(time)."</h3>");
Line 756  function popup_score(element, score) { Line 769  function popup_score(element, score) {
     div.style.top = (top - 25) + "px";      div.style.top = (top - 25) + "px";
     div.style.left = (left - 10) + "px";      div.style.left = (left - 10) + "px";
     currentDiv = div;      currentDiv = div;
     document.body.insertBefore(div, document.body.children[0]);      document.body.insertBefore(div, document.body.childNodes[0]);
     oldBorder = element.style.border;      oldBorder = element.style.border;
     element.style.border = "1px solid yellow";      element.style.border = "1px solid yellow";
     currentElement = element;      currentElement = element;
Line 1429  sub excel_outputstudent { Line 1442  sub excel_outputstudent {
     foreach my $field (@to_show) {      foreach my $field (@to_show) {
         my $value = $student->{$field};          my $value = $student->{$field};
         if ($field eq 'comments') {          if ($field eq 'comments') {
             $value = &Apache::lonmsg::retrieve_instructor_comments              $value = &Apache::lonmsgdisplay::retrieve_instructor_comments
                 ($student->{'username'},$student->{'domain'});                  ($student->{'username'},$student->{'domain'});
         }          }
         $excel_sheet->write($rows_output,$cols_output++,$value);          $excel_sheet->write($rows_output,$cols_output++,$value);
Line 1711  sub csv_outputstudent { Line 1724  sub csv_outputstudent {
     foreach my $field (@to_show) {      foreach my $field (@to_show) {
         my $value = $student->{$field};          my $value = $student->{$field};
         if ($field eq 'comments') {          if ($field eq 'comments') {
             $value = &Apache::lonmsg::retrieve_instructor_comments              $value = &Apache::lonmsgdisplay::retrieve_instructor_comments
                 ($student->{'username'},$student->{'domain'});                  ($student->{'username'},$student->{'domain'});
         }                  }        
         $Str .= '"'.&Apache::loncommon::csv_translate($value).'",';          $Str .= '"'.&Apache::loncommon::csv_translate($value).'",';
Line 1880  sub student_tries_on_sequence { Line 1893  sub student_tries_on_sequence {
                 if ($status eq 'excused') {                  if ($status eq 'excused') {
                     $symbol = 'x';                      $symbol = 'x';
                     $max--;                      $max--;
                 } elsif ($status eq 'correct_by_override') {                  } elsif ($status eq 'correct_by_override' && !$resource->is_task()) {
                     $symbol = '+';                      $symbol = '+';
                     $sum++;                      $sum++;
                 } elsif ($tries > 0) {                  } elsif ($tries > 0) {
Line 1928  sub student_tries_on_sequence { Line 1941  sub student_tries_on_sequence {
                 if (length($symbol) > 1) {                  if (length($symbol) > 1) {
                     &Apache::lonnet::logthis('length of symbol "'.$symbol.'" > 1');                      &Apache::lonnet::logthis('length of symbol "'.$symbol.'" > 1');
                 }                  }
                 $symbol = '<a href="/adm/grades'.                  my $link = '/adm/grades'.
                     '?symb='.&Apache::lonnet::escape($resource->symb).                      '?symb='.&Apache::lonnet::escape($resource->symb).
                         '&student='.$student->{'username'}.                          '&student='.$student->{'username'}.
                             '&userdom='.$student->{'domain'}.                              '&userdom='.$student->{'domain'}.
                                 '&command=submission">'.$symbol.'</a>';                                  '&command=submission';
                   $symbol = &link($symbol, $link);
             }              }
             $value .= $symbol;              $value .= $symbol;
         }          }
Line 1947  sub student_tries_on_sequence { Line 1961  sub student_tries_on_sequence {
     return ($Str,$performance_length,$sum,$max,\@TriesData);      return ($Str,$performance_length,$sum,$max,\@TriesData);
 }  }
   
   =pod
   
   =item &link
   
   Inputs:
   
   =over 4
   
   =item $text
   
   =item $target
   
   =back
   
   Takes the text and creates a link to the $text that honors
   the value of 'new window' if clicked on, but uses a real 
   'href' so middle and right clicks still work.
   
   $target and $text are assumed to be already correctly escaped; i.e., it
   can be dumped out directly into the output stream as-is.
   
   =cut
   
   sub link {
       my ($text,$target) = @_;
       return 
           "<a href='$target' onclick=\"t=this.href;if(new_window)"
           ."{window.open(t)}else{return void(window."
           ."location=t)};return false;\">$text</a>";
   }
   
 #######################################################  #######################################################
 #######################################################  #######################################################
   
Line 2051  sub student_performance_on_sequence { Line 2096  sub student_performance_on_sequence {
             push (@ScoreData,$partscore);              push (@ScoreData,$partscore);
             #              #
             if ( ($links eq 'yes' && $symbol ne ' ') || ($links eq 'all')) {              if ( ($links eq 'yes' && $symbol ne ' ') || ($links eq 'all')) {
                 $symbol = '<a href="/adm/grades'.                  my $link = '/adm/grades' .
                     '?symb='.&Apache::lonnet::escape($symb).                      '?symb='.&Apache::lonnet::escape($symb).
                     '&student='.$student->{'username'}.                      '&student='.$student->{'username'}.
                     '&userdom='.$student->{'domain'}.                      '&userdom='.$student->{'domain'}.
                     '&command=submission">'.$symbol.'</a>';                      '&command=submission';
                   $symbol = &link($symbol, $link);
             }              }
             $Str .= $symbol;              $Str .= $symbol;
         }          }

Removed from v.1.132  
changed lines
  Added in v.1.138


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