Diff for /loncom/interface/statistics/lonpercentage.pm between versions 1.1 and 1.4

version 1.1, 2002/08/30 15:35:08 version 1.4, 2003/01/08 03:27:54
Line 34  use Apache::lonhtmlcommon; Line 34  use Apache::lonhtmlcommon;
 use Apache::loncoursedata;  use Apache::loncoursedata;
 use GDBM_File;  use GDBM_File;
   
 #my $jr;  
   
 sub BuildPercentageGraph {  sub BuildPercentageGraph {
     my ($cacheDB, $students, $courseID, $c, $r)=@_;      my ($cacheDB, $students, $courseID, $c, $r)=@_;
Line 60  sub BuildPercentageGraph { Line 59  sub BuildPercentageGraph {
         return;          return;
     }      }
   
     my ($Ptr, $percentage) = &GraphData(\%cache, $students);      my ($Ptr, $percentage) = &GraphData(\%cache, $students,$r);
     $r->print($Ptr.'<br><br>');      $r->print($Ptr.'<br>');
   
     $r->print(&TableData(\%cache, $percentage));      $r->print(&TableData(\%cache, $percentage));
   
Line 186  sub InitializeSelectedStudents { Line 185  sub InitializeSelectedStudents {
 }  }
   
 sub GraphData {  sub GraphData {
     my ($cache,$students)=@_;      my ($cache,$students,$r)=@_;
   
     my $sequenceSelected = $cache->{'StatisticsMaps'};      my $sequenceSelected = $cache->{'StatisticsMaps'};
     my $problemSelected  = $cache->{'StatisticsProblemSelect'};      my $problemSelected  = $cache->{'StatisticsProblemSelect'};
Line 235  sub GraphData { Line 234  sub GraphData {
     my @percent = ();      my @percent = ();
     my @percentCount = ();      my @percentCount = ();
     my $max = 0;      my $max = 0;
     foreach my $key (sort(keys(%percentages))) {      my $pno = 0;
       foreach my $key (sort NumericSort keys(%percentages)) {
  push(@percent, $key);   push(@percent, $key);
  my $count = scalar(split(':::', $percentages{$key}));   my @temp = split(':::', $percentages{$key});
    my $count = scalar(@temp);
  if($count > $max) {   if($count > $max) {
     $max = $count;      $max = $count;
  }   }
  push(@percentCount, $count);   push(@percentCount, $count);
    $pno++;
     }      }
   
     my @GData = ('', 'Percentage', 'Number_of_Students',   #     $r->print('<br>max='.$max);
  $max, scalar(@percent),   #     $r->print('<br> percentcount='.join(',', @percentCount));
   #     $r->print('<br> percent='.join(',', @percent));
   
       my @GData = ('','Percentage','Number_of_Students',$max,$pno,
                  join(',',@percent), join(',', @percentCount));                   join(',',@percent), join(',', @percentCount));
   
   
   #    my @GData = ('', 'Percentage', 'Number_of_Students', 
   # $max, scalar(@percent), 
   #                 join(',',@percent), join(',', @percentCount));
   
     $Ptr .= '</form>'."\n";      $Ptr .= '</form>'."\n";
     $Ptr .= '<IMG src="/cgi-bin/graph.gif?'.(join('&', @GData));      $Ptr .= '<IMG src="/cgi-bin/graph.png?'.(join('&', @GData));
     $Ptr .= '" border="1" />';      $Ptr .= '" border="1" />';
     $Ptr .= '<form>'."\n";      $Ptr .= '<form>'."\n";
   
     return ($Ptr, \%percentages);      return ($Ptr, \%percentages);
 }  }
   
   sub NumericSort {
       $a <=> $b;
   }
   
 sub TableData {  sub TableData {
     my($cache,$percentage)=@_;      my($cache,$percentage)=@_;
     my $Ptr;      my $Ptr;
   
     $Ptr .= '<table border="0"><tr><td bgcolor="#777777">'."\n";      $Ptr .= '<table border="0"><tr><td bgcolor="#D7D7D7">'."\n";
     $Ptr .= '<table border="0" cellpadding="3"><tr bgcolor="#e6ffff">'."\n";      $Ptr .= '<table border="0" cellpadding="3"><tr bgcolor="#e6ffff">'."\n";
   
     $Ptr .= '<tr>'."\n";      $Ptr .= '<tr>'."\n";
     $Ptr .= '<td>Percent Correct</td><td>Students</td>';      $Ptr .= '<td>% Correct</td>'.
               '<td>Frequency</td>'.
               '<td>Students</td>';
     $Ptr .= '</tr>'."\n";      $Ptr .= '</tr>'."\n";
   
     my $alternate=0;      my $alternate=0;
     foreach (sort(keys(%$percentage))) {      foreach (sort NumericSort keys(%$percentage)) {
   
           my @temp = split(':::', $percentage->{$_});
           my $count = scalar(@temp);
   
         if($alternate) {          if($alternate) {
             $Ptr .= '<tr bgcolor="#ffffe6">';              $Ptr .= '<tr bgcolor="#ffffe6">';
         } else {          } else {
Line 276  sub TableData { Line 296  sub TableData {
         }          }
         $alternate = ($alternate + 1) % 2;          $alternate = ($alternate + 1) % 2;
   
  $Ptr .= '<td>'.$_.'</td><td>';   $Ptr .= '<td>'.$_.'</td>';
           $Ptr .= '<td>'.$count.'</td><td>';
   
  foreach my $name (sort(split(':::', $percentage->{$_}))) {   foreach my $name (sort(split(':::', $percentage->{$_}))) {
     $Ptr .= '<a href="/adm/statistics?reportSelected=';      $Ptr .= '<a href="/adm/statistics?reportSelected=';

Removed from v.1.1  
changed lines
  Added in v.1.4


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