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'}); |
} |
} |
} |
} |
|
|