--- loncom/interface/spreadsheet/classcalc.pm 2004/04/26 14:06:00 1.19
+++ loncom/interface/spreadsheet/classcalc.pm 2005/03/10 17:33:57 1.22
@@ -1,5 +1,5 @@
#
-# $Id: classcalc.pm,v 1.19 2004/04/26 14:06:00 matthew Exp $
+# $Id: classcalc.pm,v 1.22 2005/03/10 17:33:57 matthew Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -90,10 +90,16 @@ sub html_header {
$toprow .= '
'.&mt($name).' | ';
$bottomrow .= ''.$selector.' | ';
}
+ my $status .= ''.&mt('Status: [_1]',
+ ''
+ ).'';
+
return "\n
\n".
"".$toprow."
\n".
"".$bottomrow."
\n".
- "
\n";
+ "\n".$status."\n".
+ "";
}
sub get_title {
@@ -222,12 +228,12 @@ sub excel_rows {
# writes the meat of the spreadsheet to an excel worksheet. Called
# by Spreadsheet::outsheet_excel;
my $self = shift;
- my ($connection,$worksheet,$cols_output,$rows_output) = @_;
+ my ($connection,$worksheet,$cols_output,$rows_output,$format) = @_;
#
# Write a header row
$cols_output = 0;
foreach my $value ('Fullname','Username','Domain','Section','Status','ID') {
- $worksheet->write($rows_output,$cols_output++,&mt($value));
+ $worksheet->write($rows_output,$cols_output++,&mt($value),$format->{'h4'});
}
$rows_output++;
#
@@ -368,6 +374,16 @@ END
return;
}
+sub update_status {
+ my ($r,$message) = @_;
+ $r->print('');
+ $r->rflush();
+ return;
+}
+
sub compute {
my $self = shift;
my ($r) = @_;
@@ -376,12 +392,12 @@ sub compute {
$self->initialize_safe_space();
my %c = $self->constants();
my %f = $self->formulas();
+ &update_status($r,'Initializing Course Structure');
+ &Apache::studentcalc::initialize_package();
my %prog_state=&Apache::lonhtmlcommon::Create_PrgWin
($r,&mt('Spreadsheet Computation Status'),
- &mt('Spreadsheet Computation'), scalar(@Students));
- &Apache::lonhtmlcommon::Update_PrgWin($r,\%prog_state,
- &mt('Processing course structure'));
- &Apache::studentcalc::initialize_package();
+ &mt('Spreadsheet Computation'), scalar(@Students),'inline',undef,
+ 'sheet','spreadsheet_status');
&Apache::lonhtmlcommon::Update_PrgWin($r,\%prog_state,
&mt('Processing first student'));
foreach my $student (@Students) {
@@ -412,11 +428,13 @@ sub compute {
'last student');
}
&Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state);
+ &update_status($r,'Done computing student sheets');
$r->rflush();
$self->constants(\%c);
$self->formulas(\%f);
$self->calcsheet();
$self->save() if ($self->need_to_save());
+ &update_status($r,'Done!');
}
1;