version 1.5, 2004/07/07 18:14:33
|
version 1.7, 2004/07/08 14:16:06
|
Line 99 sub copy_stage {
|
Line 99 sub copy_stage {
|
my $result = &Apache::loncfile::exists($uname, $udom, $path_to_new_file); |
my $result = &Apache::loncfile::exists($uname, $udom, $path_to_new_file); |
$r->print($result); |
$r->print($result); |
if(($result) && ($result =~ m|published|) ) { |
if(($result) && ($result =~ m|published|) ) { |
&delete_file($r, $author_name, $newpath, $filename, $path_to_new_file, '1'); |
&delete_copy_file($r, $author_name, $newpath, $filename, $path_to_new_file, '1'); |
} elsif(($result) && ($result =~ m|exists!|)) { |
} elsif(($result) && ($result =~ m|exists!|)) { |
&confirm($r, $author_name, $newpath, $filename, $path_to_new_file); |
&confirm($r, $author_name, $newpath, $filename, $path_to_new_file); |
} else { |
} else { |
Line 124 sub confirm {
|
Line 124 sub confirm {
|
</form>'); |
</form>'); |
} |
} |
|
|
sub delete_file { |
sub delete_copy_file { |
my ($r, $author_name, $newpath, $filename, $path_to_new_file, $type) = @_; |
my ($r, $author_name, $newpath, $filename, $path_to_new_file, $type) = @_; |
if($type eq '1') { |
if($type eq '1') { |
$r->print("<b>Cannot delete non-obsolete published file</b><br />Please |
$r->print("<b>Cannot delete non-obsolete published file</b><br />Please |
use the code view in previous window to use shared code<br /><br />"); |
use the code view in previous window to use shared code<br /><br />"); |
$r->print('<input type="button" value="Close Window" name="close" onClick="window.close()">'); |
$r->print('<input type="button" value="Close Window" name="close" onClick="window.close()" />'); |
} else { |
} else { |
if(-e $path_to_new_file) { |
if(-e $path_to_new_file) { |
unless(unlink($path_to_new_file)) { |
unless(unlink($path_to_new_file)) { |
Line 168 sub copy_file {
|
Line 168 sub copy_file {
|
|
|
} |
} |
$r->print("<br /><b>Copying File</b>"); |
$r->print("<br /><b>Copying File</b>"); |
my $problem_filename = "/home/httpd/html".$filename; |
my $problem_filename = $Apache::lonnet::perlvar{'lonDocRoot'}.$filename; |
my $file_output = &Apache::lonnet::getfile($problem_filename); |
my $file_output = &Apache::lonnet::getfile($problem_filename); |
my $fs=Apache::File->new(">$path_to_new_file"); |
my $fs=Apache::File->new(">$path_to_new_file"); |
if (defined($fs)) { |
if (defined($fs)) { |
Line 181 sub copy_file {
|
Line 181 sub copy_file {
|
|
|
sub print_item { |
sub print_item { |
my ($r, $filename) = @_; |
my ($r, $filename) = @_; |
$filename = "/home/httpd/html".$filename; |
$filename = $Apache::lonnet::perlvar{'lonDocRoot'}.$filename; |
&Apache::lonnet::logthis("print_item filename = $filename"); |
&Apache::lonnet::logthis("print_item filename = $filename"); |
my $file_output = &Apache::lonnet::getfile($filename); |
my $file_output = &Apache::lonnet::getfile($filename); |
my $count=0; |
my $count=0; |
Line 212 sub handler {
|
Line 212 sub handler {
|
if ($source ne 'open') { |
if ($source ne 'open') { |
$ENV{'user.error.msg'}="$filename:cre:1:1:Source code not available"; |
$ENV{'user.error.msg'}="$filename:cre:1:1:Source code not available"; |
return HTTP_NOT_ACCEPTABLE; |
return HTTP_NOT_ACCEPTABLE; |
} |
} |
if ((!&Apache::lonnet::allowed('cre',$filename)) || |
if ((!&Apache::lonnet::allowed('cre',$filename)) || |
(!&Apache::lonnet::allowed('bre',$filename))) { |
(!&Apache::lonnet::allowed('bre',$filename))) { |
$ENV{'user.error.msg'}="$filename:bre:1:1:Access to resource denied"; |
$ENV{'user.error.msg'}="$filename:bre:1:1:Access to resource denied"; |
return HTTP_NOT_ACCEPTABLE; |
return HTTP_NOT_ACCEPTABLE; |
} |
} |
if ($ENV{'form.action'} eq 'stage2') { |
if ($ENV{'form.action'} eq 'stage2') { |
my $author = &Apache::lonnet::metadata($filename,'authorspace'); |
my $author = &Apache::lonnet::metadata($filename,'authorspace'); |
$author =~ m|@|; |
$author =~ m|@|; |
$author = $`; #This just tells who the author name is for later processing. |
$author = $`; #This just tells who the author name is for later processing. |
&stage_2($r, $ENV{'form.filename'}, $author, $listname); |
&stage_2($r, $ENV{'form.filename'}, $author, $listname); |
} |
} |
elsif($ENV{'form.action'} eq 'copy_stage') { |
elsif($ENV{'form.action'} eq 'copy_stage') { |
©_stage($r, $filename,$ENV{'form.listname'},$ENV{'form.newpath'}); |
©_stage($r, $filename,$ENV{'form.listname'},$ENV{'form.newpath'}); |
} |
} |
elsif($ENV{'form.action'} eq 'delete_confirm') { |
elsif($ENV{'form.action'} eq 'delete_confirm') { |
&Apache::loncommon::content_type($r,'text/html'); |
&Apache::loncommon::content_type($r,'text/html'); |
$r->send_http_header; |
$r->send_http_header; |
&delete_file($r, $ENV{'form.author'}, $ENV{'form.newpath'}, $ENV{'form.filename'}, $ENV{'form.path'}, '0'); |
&delete_copy_file($r, $ENV{'form.author'}, $ENV{'form.newpath'}, $ENV{'form.filename'}, $ENV{'form.path'}, '0'); |
} |
} else { |
else { |
|
&Apache::loncommon::content_type($r,'text/html'); |
&Apache::loncommon::content_type($r,'text/html'); |
$r->send_http_header; |
$r->send_http_header; |
$r->print('<form name="copy" action="/adm/source/" target="_parent" method="post"> |
$r->print('<form name="copy" action="/adm/source/" target="_parent" method="post"> |
<input type="button" value="Close Window" name="close" onClick="window.close()"> |
<input type="button" value="Close Window" name="close" onClick="window.close()" /> |
<input type="hidden" name="filename" value="'.$filename.'" /> |
<input type="hidden" name="filename" value="'.$filename.'" /> |
<input type="hidden" name="listname" value="'.$listname.'" /> |
<input type="hidden" name="listname" value="'.$listname.'" /> |
<input type="hidden" name="action" value="stage2" /> |
<input type="hidden" name="action" value="stage2" /> |