--- loncom/publisher/loncfile.pm 2002/05/27 03:18:46 1.10 +++ loncom/publisher/loncfile.pm 2002/06/07 01:35:48 1.11 @@ -10,7 +10,7 @@ # # -# $Id: loncfile.pm,v 1.10 2002/05/27 03:18:46 foxr Exp $ +# $Id: loncfile.pm,v 1.11 2002/06/07 01:35:48 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -139,7 +139,12 @@ sub phaseone { my $main=$2; my $suffix=$3; - my $conspace='/home/'.$uname.'/public_html'.$fn; + my $conspace; + if ($fn =~ m-^/home/-) { + $conspace=$fn; + } else { + $conspace='/home/'.$uname.'/public_html'.$fn; + } $r->print('
'. ''. @@ -215,6 +220,7 @@ sub phasetwo { my $dir=$1; my $main=$2; my $suffix=$3; + $dir =~ s-^/[^/]*/[^/]*/[^/]*--; &Debug($r, "loncfile::phase2 dir = $dir main = $main suffix = $suffix"); @@ -228,7 +234,7 @@ sub phasetwo { if ($ENV{'form.action'} eq 'rename') { if (-e $conspace) { if ($ENV{'form.newfilename'}) { - unless (rename('/home/'.$uname.'/public_html'.$fn, + unless (rename($fn, '/home/'.$uname.'/public_html'.$dir.'/'.$ENV{'form.newfilename'})) { $r->print('Error: '.$!.''); } @@ -239,7 +245,7 @@ sub phasetwo { } } elsif ($ENV{'form.action'} eq 'delete') { if (-e $conspace) { - unless (unlink('/home/'.$uname.'/public_html'.$fn)) { + unless (unlink($fn)) { $r->print('Error: '.$!.''); } } else { @@ -249,7 +255,7 @@ sub phasetwo { } elsif ($ENV{'form.action'} eq 'copy') { if (-e $conspace) { if ($ENV{'form.newfilename'}) { - unless (copy('/home/'.$uname.'/public_html'.$fn, + unless (copy($fn, '/home/'.$uname.'/public_html'.$dir.'/'.$ENV{'form.newfilename'})) { $r->print('Error: '.$!.''); }