--- loncom/interface/spreadsheet/classcalc.pm 2004/01/14 16:48:51 1.18
+++ loncom/interface/spreadsheet/classcalc.pm 2004/06/08 15:55:38 1.21
@@ -1,5 +1,5 @@
#
-# $Id: classcalc.pm,v 1.18 2004/01/14 16:48:51 matthew Exp $
+# $Id: classcalc.pm,v 1.21 2004/06/08 15:55:38 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 {
@@ -299,6 +305,18 @@ sub outsheet_htmlclasslist {
my $self = shift;
my ($r) = @_;
#
+ # Determine if we should output expire caches links...
+ my $show_expire_link = 0;
+ if (exists($ENV{'user.role.dc./'.$ENV{'request.role.domain'}.'/'})){
+ $show_expire_link = 1;
+ }
+ #
+ if ($show_expire_link) {
+ $r->print(''.
+ &mt('Expire all student spreadsheets').''.$/);
+ }
+ #
$r->print(''.
&mt('Click on a student to be taken to their spreadsheet').
'
');
@@ -322,8 +340,11 @@ sub outsheet_htmlclasslist {
$header{'domain'} |
$header{'section'} |
$header{'status'} |
-
END
+ if ($show_expire_link) {
+ $tableheader.= ' | ';
+ }
+ $tableheader.= "\n";
#
my $num_output = 0;
foreach my $student (@Students) {
@@ -339,13 +360,30 @@ END
''.$link.$student->{'username'}.' | '.
''.$student->{'domain'} .' | '.
''.$student->{'section'} .' | '.
- ''.$student->{'status'} .' | '.
- "\n");
+ ''.$student->{'status'} .' | ');
+ if ($show_expire_link) {
+ $r->print(''.
+ 'Expire Record'.$/);
+ }
+ $r->print("\n");
}
$r->print("\n");
return;
}
+sub update_status {
+ my ($r,$message) = @_;
+ $r->print('');
+ $r->rflush();
+ return;
+}
+
sub compute {
my $self = shift;
my ($r) = @_;
@@ -354,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) {
@@ -390,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;
|