Diff for /loncom/interface/spreadsheet/studentcalc.pm between versions 1.6 and 1.10

version 1.6, 2003/05/23 19:36:04 version 1.10, 2003/05/29 18:39:58
Line 64  my %Exportrows = (); Line 64  my %Exportrows = ();
   
 my $current_course;  my $current_course;
   
   sub initialize {
       &initialize_sequence_cache();
   }
   
 sub initialize_package {  sub initialize_package {
     $current_course = $ENV{'request.course.id'};      $current_course = $ENV{'request.course.id'};
     &initialize_sequence_cache();      &initialize_sequence_cache();
     &load_cached_export_rows();      &load_cached_export_rows();
 }  }
   
   sub ensure_correct_sequence_data {
       if ($current_course ne $ENV{'request.course.id'}) {
           &initialize_sequence_cache();
           $current_course = $ENV{'request.course.id'};
       }
       return;
   }
   
 sub initialize_sequence_cache {  sub initialize_sequence_cache {
     #      #
     # Set up the sequences and assessments      # Set up the sequences and assessments
Line 312  sub modify_cell { Line 324  sub modify_cell {
     return;      return;
 }  }
   
 sub outsheet_csv {  sub csv_rows {
       # writes the meat of the spreadsheet to an excel worksheet.  Called
       # by Spreadsheet::outsheet_excel;
     my $self = shift;      my $self = shift;
     my ($r) = @_;      my ($filehandle) = @_;
     $r->print('<h1>csv output is not supported yet</h1>');      #
       # Write a header row
       $self->csv_output_row($filehandle,undef,
                             ('Sequence or Folder','Assessment title'));
       #
       # Write each assessments row
       if (scalar(@Sequences)< 1) {
           &initialize_sequence_cache();
       }
       foreach my $Sequence (@Sequences) {
    next if ($Sequence->{'num_assess'} < 1);
    foreach my $resource (@{$Sequence->{'contents'}}) {
       my $rownum = $self->get_row_number_from_key($resource->{'symb'});
               my @assessdata = ($Sequence->{'title'},
                                 $resource->{'title'});
               $self->csv_output_row($filehandle,$rownum,@assessdata);
           }
       }
       return;
 }  }
   
 sub excel_rows {  sub excel_rows {
Line 353  sub outsheet_recursive_excel { Line 385  sub outsheet_recursive_excel {
     my ($r) = @_;      my ($r) = @_;
 }   } 
   
 sub set_row_sources {  
     my $self = shift;  
     while (my ($cell,$value) = each(%{$self->{'formulas'}})) {  
         next if ($cell !~ /^A(\d+)/ && $1 > 0);  
         my $row = $1;  
         (undef,$value) = split('__&&&__',$value);  
         $value = 'Default' if (! defined($value));  
         $self->{'row_source'}->{$row} = $value;  
     }  
     return;  
 }  
   
 sub compute {  sub compute {
     my $self = shift;      my $self = shift;
     $self->logthis('computing');      $self->logthis('computing');
Line 442  sub compute { Line 462  sub compute {
     $Exportrows{$student}->{'data'} = \@exportarray;      $Exportrows{$student}->{'data'} = \@exportarray;
     # save export row      # save export row
     $self->save_export_data();      $self->save_export_data();
       #
       $self->save() if ($self->need_to_save());
       return;
   }
   
   sub set_row_sources {
       my $self = shift;
       while (my ($cell,$value) = each(%{$self->{'formulas'}})) {
           next if ($cell !~ /^A(\d+)/ && $1 > 0);
           my $row = $1;
           (undef,$value) = split('__&&&__',$value);
           $value = 'Default' if (! defined($value));
           $self->{'row_source'}->{$row} = $value;
       }
     return;      return;
 }  }
   
Line 453  sub set_row_numbers { Line 487  sub set_row_numbers {
         next if ($row == 0);          next if ($row == 0);
         my ($symb,undef) = split('__&&&__',$formula);          my ($symb,undef) = split('__&&&__',$formula);
         $self->{'row_numbers'}->{$symb} = $row;          $self->{'row_numbers'}->{$symb} = $row;
           $self->{'maxrow'} = $1 if ($1 > $self->{'maxrow'});
     }      }
 }  }
   

Removed from v.1.6  
changed lines
  Added in v.1.10


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