version 1.16, 2003/07/16 13:52:19
|
version 1.20, 2003/08/17 18:50:12
|
Line 214 sub handler {
|
Line 214 sub handler {
|
$r->uri.":opa:0:0:Cannot modify spreadsheet"; |
$r->uri.":opa:0:0:Cannot modify spreadsheet"; |
return HTTP_NOT_ACCEPTABLE; |
return HTTP_NOT_ACCEPTABLE; |
} |
} |
|
my $courseid = $ENV{'request.course.id'}; |
|
# |
|
# Do not allow students to continue if standard grading is in effect. |
|
if ($ENV{'request.role'} =~ /^st\./) { |
|
if ($ENV{'course.'.$courseid.'.grading'} eq 'standard') { |
|
return HTTP_NOT_ACCEPTABLE; |
|
} |
|
} |
# |
# |
# Get query string for limited number of parameters |
# Get query string for limited number of parameters |
# |
# |
&Apache::loncommon::get_unprocessed_cgi |
&Apache::loncommon::get_unprocessed_cgi |
($ENV{'QUERY_STRING'},['sname','sdomain','usymb','filename']); |
($ENV{'QUERY_STRING'},['sname','sdomain','usymb','filename','recalc']); |
# |
# |
# Deal with restricted student permissions |
# Deal with restricted student permissions |
# |
# |
Line 310 sub handler {
|
Line 318 sub handler {
|
edit_text +='<html><head><title>Cell Edit Window</title></head><body>'; |
edit_text +='<html><head><title>Cell Edit Window</title></head><body>'; |
edit_text += '<form name="editwinform">'; |
edit_text += '<form name="editwinform">'; |
edit_text += '<center><h3>Cell '+cellname+'</h3>'; |
edit_text += '<center><h3>Cell '+cellname+'</h3>'; |
edit_text += '<textarea name="newformula" cols="40" rows="6"'; |
edit_text += '<textarea name="newformula" cols="60" rows="12"'; |
edit_text += ' wrap="off" >'+cellformula+'</textarea>'; |
edit_text += ' wrap="off" >'+cellformula+'</textarea>'; |
edit_text += '</br>'; |
edit_text += '</br>'; |
edit_text += '<input type="button" name="accept" value="Accept"'; |
edit_text += '<input type="button" name="accept" value="Accept"'; |
Line 331 sub handler {
|
Line 339 sub handler {
|
editwin.close(); |
editwin.close(); |
} |
} |
|
|
editwin = window.open($nothing,'CellEditWin','height=200,width=350,scrollbars=no,resizeable=yes,alwaysRaised=yes,dependent=yes',true); |
editwin = window.open($nothing,'CellEditWin','height=280,width=480,scrollbars=no,resizeable=yes,alwaysRaised=yes,dependent=yes',true); |
editwin.document.write(edit_text); |
editwin.document.write(edit_text); |
} |
} |
</script> |
</script> |
Line 355 ENDSCRIPT
|
Line 363 ENDSCRIPT
|
} |
} |
} |
} |
## |
## |
|
## Take care of "backdoor" spreadsheet expiration / recalc stuff |
|
if ($allowed_to_edit && exists($ENV{'form.recalc'})) { |
|
if ($ENV{'form.recalc'} eq 'ilovewastingtime') { |
|
&Apache::lonnet::logthis('ilovewastingtime'); |
|
# expire ALL spreadsheets |
|
&Apache::lonnet::expirespread('','','studentcalc'); |
|
&Apache::lonnet::expirespread('','','assesscalc'); |
|
} elsif ($ENV{'form.recalc'} =~ /^symb:/) { |
|
# expire for all students on this symb |
|
my ($symb) = ($ENV{'form.recalc'} =~ /^symb:(.*)$/); |
|
&Apache::lonnet::logthis('symb = '.$symb); |
|
&Apache::lonnet::expirespread('','','assesscalc',$symb); |
|
&Apache::lonnet::expirespread('','','studentcalc'); |
|
} elsif ($ENV{'form.recalc'} =~ /^student:/) { |
|
# expire all assessment spreadsheets for this user |
|
my ($sname,$sdom) = ($ENV{'form.recalc'}=~/^student:(.*):(.*)$/); |
|
&Apache::lonnet::logthis('student = '.$sname.':'.$sdom); |
|
if (defined($sname) && defined($sdom)) { |
|
&Apache::lonnet::expirespread($sname,$sdom,'assesscalc'); |
|
&Apache::lonnet::expirespread($sname,$sdom,'studentcalc'); |
|
} |
|
} |
|
} |
|
## |
## Make the spreadsheet |
## Make the spreadsheet |
&Apache::Spreadsheet::initialize_spreadsheet_package(); |
&Apache::Spreadsheet::initialize_spreadsheet_package(); |
my $spreadsheet = undef; |
my $spreadsheet = undef; |
Line 414 END
|
Line 446 END
|
} |
} |
$r->rflush(); |
$r->rflush(); |
# |
# |
|
$r->print("<table><tr>"); |
if ($sheettype eq 'classcalc') { |
if ($sheettype eq 'classcalc') { |
$r->print('<input type="submit" value="Generate Spreadsheet" /><br />'); |
$r->print('<td><input type="submit" value="Generate Spreadsheet" />'. |
|
'</td>'); |
} |
} |
|
# if ($allowed_to_view) { |
|
# $r->print('<td>'. |
|
# &Apache::loncommon::help_open_topic("Spreadsheet_About", |
|
# 'Spreadsheet Help'). |
|
# '</td>'); |
|
# } |
|
# if ($allowed_to_edit) { |
|
# $r->print('<td>'. |
|
# &Apache::loncommon::help_open_topic("Spreadsheet_Editing", |
|
# 'Editing Help'). |
|
# '</td>'); |
|
# } |
|
$r->print('</tr></table>'); |
# |
# |
# Keep track of the filename |
# Keep track of the filename |
$r->print(&hiddenfield('filename',$filename)); |
$r->print(&hiddenfield('filename',$filename)); |