--- loncom/interface/spreadsheet/lonspreadsheet.pm 2003/08/17 18:50:12 1.20 +++ loncom/interface/spreadsheet/lonspreadsheet.pm 2003/09/30 15:40:09 1.26 @@ -1,5 +1,5 @@ # -# $Id: lonspreadsheet.pm,v 1.20 2003/08/17 18:50:12 matthew Exp $ +# $Id: lonspreadsheet.pm,v 1.26 2003/09/30 15:40:09 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -54,12 +54,16 @@ built-in functions. package Apache::lonspreadsheet; use strict; +use warnings FATAL=>'all'; +no warnings 'uninitialized'; use Apache::classcalc(); use Apache::studentcalc(); use Apache::assesscalc(); use Apache::Constants qw(:common :http); use Apache::lonnet; use Apache::lonhtmlcommon; +use Apache::lonlocal; +use Apache::loncoursedata(); use HTML::Entities(); ## @@ -103,9 +107,8 @@ sub file_dialogs { if ($save_status ne 'ok') { $message .= "An error occurred while saving the spreadsheet". "There error is:".$save_status; - return $result; } else { - $message .= "Spreadsheet saved as ".$ENV{'form.savefilename'}; + $message .= "Spreadsheet saved as ".$spreadsheet->filename(); } } elsif (exists($ENV{'form.newformula'}) && exists($ENV{'form.cell'}) && @@ -165,9 +168,13 @@ END } $load_dialog .= '>'.$sheetfilename."\n"; } - $load_dialog .= " \n\n"; + $load_dialog .= "\n \n\n"; # $result .=< + File Dialogs + --> @@ -180,6 +187,9 @@ END
+ END return ($result,$message); } @@ -200,7 +210,7 @@ sub handler { # HTML Header # if ($r->header_only) { - $r->content_type('text/html'); + &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; return OK; } @@ -289,7 +299,7 @@ sub handler { # # Open page, try to prevent browser cache. # - $r->content_type('text/html'); + &Apache::loncommon::content_type($r,'text/html'); &Apache::loncommon::no_cache($r); $r->send_http_header; @@ -365,6 +375,9 @@ ENDSCRIPT ## ## Take care of "backdoor" spreadsheet expiration / recalc stuff if ($allowed_to_edit && exists($ENV{'form.recalc'})) { + if (exists($ENV{'form.recalc'})) { + &Apache::loncoursedata::delete_caches($ENV{'requres.course.id'}); + } if ($ENV{'form.recalc'} eq 'ilovewastingtime') { &Apache::lonnet::logthis('ilovewastingtime'); # expire ALL spreadsheets @@ -448,21 +461,22 @@ END # $r->print(""); if ($sheettype eq 'classcalc') { - $r->print(''); + } + if ($allowed_to_view) { + $r->print(''); + } + if ($allowed_to_edit) { + $r->print(''); } -# if ($allowed_to_view) { -# $r->print(''); -# } -# if ($allowed_to_edit) { -# $r->print(''); -# } $r->print('
'. + $r->print(''. + ''. + &Apache::loncommon::help_open_topic("Spreadsheet_About", + 'Spreadsheet Help'). + ''. + &Apache::loncommon::help_open_topic("Spreadsheet_Editing", + 'Editing Help'). ''. -# &Apache::loncommon::help_open_topic("Spreadsheet_About", -# 'Spreadsheet Help'). -# ''. -# &Apache::loncommon::help_open_topic("Spreadsheet_Editing", -# 'Editing Help'). -# '
'); # # Keep track of the filename