Diff for /loncom/interface/spreadsheet/studentcalc.pm between versions 1.23 and 1.24

version 1.23, 2003/10/14 18:36:54 version 1.24, 2003/11/17 19:55:41
Line 174  sub outsheet_html { Line 174  sub outsheet_html {
     my $editing_is_allowed = &Apache::lonnet::allowed('mgr',      my $editing_is_allowed = &Apache::lonnet::allowed('mgr',
                                                 $ENV{'request.course.id'});                                                  $ENV{'request.course.id'});
     ####################################      ####################################
       # Report any calculation errors    #
       ####################################
       $r->print($self->html_report_error());
       ####################################
     # Determine table structure        #      # Determine table structure        #
     ####################################      ####################################
     my $num_uneditable = 26;      my $num_uneditable = 26;
Line 527  sub compute { Line 531  sub compute {
             }              }
             $f{$cell} = $resource->{'symb'}.'__&&&__'.$assess_filename;              $f{$cell} = $resource->{'symb'}.'__&&&__'.$assess_filename;
             if ($connection->aborted()) { $self->cleanup(); return; }              if ($connection->aborted()) { $self->cleanup(); return; }
             my $assessSheet = Apache::assesscalc->new($self->{'name'},              my $assessSheet;
                                                       $self->{'domain'},                  $assessSheet = Apache::assesscalc->new($self->{'name'},
                                                       $assess_filename,                                                         $self->{'domain'},
                                                       $resource->{'symb'});                                                         $assess_filename,
                                                          $resource->{'symb'});
             my @exportdata = $assessSheet->export_data($r);              my @exportdata = $assessSheet->export_data($r);
               #
               if ($assessSheet->badcalc()) {
                   $self->set_calcerror(
               &mt('Error computing row for assessment "[_1]" (row [_2]):[_3]',
                   $assessSheet->get_title(),$rownum,$assessSheet->calcerror()));
               }
               #
             if ($connection->aborted()) { $self->cleanup(); return; }              if ($connection->aborted()) { $self->cleanup(); return; }
             if ($assessSheet->blackout()) {              if ($assessSheet->blackout()) {
                 $self->blackout(1);                  $self->blackout(1);
Line 662  Writes the export data for this student Line 674  Writes the export data for this student
 #############################################  #############################################
 sub save_export_data {  sub save_export_data {
     my $self = shift;      my $self = shift;
     &Apache::assesscalc::save_cached_export_rows($self->{'name'},  
                                                  $self->{'domain'});  
     return if ($self->temporary());  
     my $student = $self->{'name'}.':'.$self->{'domain'};      my $student = $self->{'name'}.':'.$self->{'domain'};
       return if ($self->temporary());
       if ($self->badcalc()){
           # do not save data away when calculations have not been done properly.
           delete($Exportrows{$student});
           return;
       }
     return if (! exists($Exportrows{$student}));      return if (! exists($Exportrows{$student}));
       &Apache::assesscalc::save_cached_export_rows($self->{'name'},
                                                    $self->{'domain'});
     return if (! $self->is_default());      return if (! $self->is_default());
     my $key = join(':',($self->{'name'},$self->{'domain'},'studentcalc')).':';      my $key = join(':',($self->{'name'},$self->{'domain'},'studentcalc')).':';
     my $timekey = $key.'.time';      my $timekey = $key.'.time';
Line 710  sub export_data { Line 727  sub export_data {
         $self->compute($r);          $self->compute($r);
     }      }
     if ($connection->aborted()) { $self->cleanup(); return; }      if ($connection->aborted()) { $self->cleanup(); return; }
     my @Data = @{$Exportrows{$student}->{'data'}};      my @Data;
     for (my $i=0; $i<=$#Data;$i++) {      if ($self->badcalc()) {
         $Data[$i]="'".$Data[$i]."'" if ($Data[$i]=~/\D/ && defined($Data[$i]));          @Data = ();
       } else {
           @Data = @{$Exportrows{$student}->{'data'}};
           for (my $i=0; $i<=$#Data;$i++) {
               if ($Data[$i]=~/\D/ && defined($Data[$i])) {
                   $Data[$i]="'".$Data[$i]."'";
               }
           }
     }      }
     return @Data;      return @Data;
 }  }

Removed from v.1.23  
changed lines
  Added in v.1.24


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