--- loncom/interface/spreadsheet/classcalc.pm 2003/11/21 21:51:28 1.16 +++ loncom/interface/spreadsheet/classcalc.pm 2004/06/04 21:43:36 1.20 @@ -1,5 +1,5 @@ # -# $Id: classcalc.pm,v 1.16 2003/11/21 21:51:28 matthew Exp $ +# $Id: classcalc.pm,v 1.20 2004/06/04 21:43:36 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -285,7 +285,9 @@ sub output_options { description => 'Excel'}, {value => 'csv', description => 'Comma Separated Values'}, -); +# {value => 'xml', +# description => 'XML'}, + ); } sub outsheet_recursive_excel { @@ -297,6 +299,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'). '

'); @@ -314,13 +328,17 @@ sub outsheet_htmlclasslist {

+ - END + if ($show_expire_link) { + $tableheader.= ''; + } + $tableheader.= "\n"; # my $num_output = 0; foreach my $student (@Students) { @@ -331,12 +349,20 @@ END '&sdomain='.$student->{'domain'}.'">'; $student->{'section'} = 'none' if ($student->{'section'} eq '-1'); $r->print(''. + ''. ''. ''. ''. ''. - ''. - "\n"); + ''); + if ($show_expire_link) { + $r->print('\n"); } $r->print("
$header{'student'} $header{'username'} $header{'domain'} $header{'section'} $header{'status'}
 
'.$num_output.''.$link.$student->{'fullname'}.''.$link.$student->{'username'}.''.$student->{'domain'} .''.$student->{'section'} .''.$student->{'status'} .'
'.$student->{'status'} .''. + 'Expire Record'.$/); + } + $r->print("

\n"); return; @@ -350,13 +376,11 @@ sub compute { $self->initialize_safe_space(); my %c = $self->constants(); my %f = $self->formulas(); + &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(); - &Apache::lonhtmlcommon::Update_PrgWin($r,\%prog_state, &mt('Processing first student')); foreach my $student (@Students) { if ($connection->aborted()) { $self->cleanup(); return; }