Diff for /loncom/interface/spreadsheet/studentcalc.pm between versions 1.40 and 1.46

version 1.40, 2006/05/30 12:46:26 version 1.46, 2014/02/12 16:55:36
Line 59  use Apache::assesscalc(); Line 59  use Apache::assesscalc();
 use HTML::Entities();  use HTML::Entities();
 use Time::HiRes;  use Time::HiRes;
 use Apache::lonlocal;  use Apache::lonlocal;
 use lib '/home/httpd/lib/perl/';  
 use LONCAPA;  use LONCAPA;
     
   
Line 101  sub initialize_sequence_cache { Line 100  sub initialize_sequence_cache {
     }      }
     my @all_sequences = $navmap->retrieveResources(undef,      my @all_sequences = $navmap->retrieveResources(undef,
                                                sub { shift->is_map(); },1,0,1);                                                 sub { shift->is_map(); },1,0,1);
     for my $sequence ($navmap->getById('0.0'), @all_sequences) {      my $toplevelseq = $navmap->getById('0.0');
  if ($navmap->hasResource($sequence,sub { shift->is_problem(); }, 0)){      if (!grep(/^\Q$toplevelseq\E$/,@all_sequences)) {
             push(@Sequences,$sequence);           unshift(@all_sequences,$toplevelseq);
     &get_resources($sequence);      }
         }      foreach my $sequence (@all_sequences) {
          if ($navmap->hasResource($sequence,sub { shift->is_problem(); }, 0,1)){
              push(@Sequences,$sequence);
              &get_resources($sequence);
          }
     }      }
 }  }
   
Line 118  sub get_resources { Line 121  sub get_resources {
     return () if (! defined($navmap) || ! ref($navmap));      return () if (! defined($navmap) || ! ref($navmap));
     my @resources = $navmap->retrieveResources($seq,      my @resources = $navmap->retrieveResources($seq,
                                                sub { shift->is_problem(); },                                                 sub { shift->is_problem(); },
                                                0,0,0);                                                 0,0,1);
     $res_memoize{$seq->symb()}=\@resources;      $res_memoize{$seq->symb()}=\@resources;
     return @resources;      return @resources;
 }  }
Line 224  END Line 227  END
     }      }
     $tableheader .="</tr>\n";      $tableheader .="</tr>\n";
     if ($self->blackout()) {      if ($self->blackout()) {
         $r->print('<font color="red" size="+2"><p>'.          $r->print('<p class="LC_warning">'.
                   &mt('Some computations are not available at this time.').'<br />'.                    &mt('Some computations are not available at this time.').'<br />'.
                   &mt('There are problems whose status you are not allowed to view.').                    &mt('There are problems whose status you are not allowed to view.').
                   '</font></p>'."\n");                    '</p>'."\n");
     } else {      } else {
         $r->print($tableheader);          $r->print($tableheader);
         #          #
         # Print out template row          # Print out template row
         if (exists($env{'request.role.adv'}) && $env{'request.role.adv'}) {          if (exists($env{'request.role.adv'}) && $env{'request.role.adv'}) {
             $r->print('<tr><td>Template</td><td>&nbsp;</td>'.              $r->print('<tr><td>'.&mt('Template').'</td><td>&nbsp;</td>'.
                       $self->html_template_row($num_uneditable,                        $self->html_template_row($num_uneditable,
                                                $importcolor)."</tr>\n");                                                 $importcolor)."</tr>\n");
         }          }
Line 304  END Line 307  END
             } else {              } else {
                 $row_output .= '<td><a href="'.$resource->src.'?symb='.                  $row_output .= '<td><a href="'.$resource->src.'?symb='.
                     &escape($resource->symb).                      &escape($resource->symb).
                     '">Go&nbsp;To</a>';                      '"><span class="LC_nobreak">'.&mt('Go To').'</span></a>';
                 $row_output .= '</td><td>'.$resource->compTitle.'</td>';                  $row_output .= '</td><td>'.$resource->compTitle.'</td>';
             }              }
             if ($self->blackout() && $self->{'blackout_rows'}->{$rownum}>0) {              if ($self->blackout() && $self->{'blackout_rows'}->{$rownum}>0) {
Line 400  sub modify_cell { Line 403  sub modify_cell {
         $self->set_formula($cell,$formula);          $self->set_formula($cell,$formula);
     } elsif ($cell !~ /^([A-z](\d+)|template_[A-z])$/) {      } elsif ($cell !~ /^([A-z](\d+)|template_[A-z])$/) {
         return;          return;
       } else {
           $self->set_formula($cell,$formula);
     }      }
     $self->rebuild_stats();      $self->rebuild_stats();
     return;      return;
Line 552  sub compute { Line 557  sub compute {
     }      }
     $self->initialize_safe_space();      $self->initialize_safe_space();
     &Apache::assesscalc::initialize_package($self->{'name'},$self->{'domain'},      &Apache::assesscalc::initialize_package($self->{'name'},$self->{'domain'},
                                             $navmap);                                              $navmap,$self);
     my %f = $self->formulas();      my %f = $self->formulas();
     #      #
     # Process the formulas list -       # Process the formulas list - 

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


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