version 1.82, 2007/04/20 20:55:01
|
version 1.83, 2007/04/26 21:17:16
|
Line 239 Returns:
|
Line 239 Returns:
|
|
|
=over 4 |
=over 4 |
|
|
|
=item string - Either undef, 'warning' or 'error' depending on the |
|
type of problem |
|
|
=item string - Either where the resource exists as an html string that can |
=item string - Either where the resource exists as an html string that can |
be embedded in a dialog or an empty string if the resource |
be embedded in a dialog or an empty string if the resource |
does not exist. |
does not exist. |
Line 251 sub exists {
|
Line 254 sub exists {
|
my ($user, $domain, $construct) = @_; |
my ($user, $domain, $construct) = @_; |
my $published=$construct; |
my $published=$construct; |
$published=~ |
$published=~ |
s/^\/home\/$user\/public\_html\//\/home\/httpd\/html\/res\/$domain\/$user\//; |
s{^/home/$user/public_html/}{/home/httpd/html/res/$domain/$user/}; |
my $result=''; |
my ($type,$result); |
if ( -d $construct ) { |
if ( -d $construct ) { |
return &mt('Error: destination for operation is an existing directory.'); |
return ('error','<p><span class="LC_error">'.&mt('Error: destination for operation is an existing directory.').'</span></p>'); |
|
|
} |
} |
|
|
if ( -e $published) { |
if ( -e $published) { |
$result.='<p><font color="red">'.&mt('Warning: target file exists, and has been published!').'</font></p>'; |
if ( -e $construct ) { |
|
$type = 'warning'; |
|
$result.='<p><span class="LC_warning">'.&mt('Warning: target file exists, and has been published!').'</span></p>'; |
|
} else { |
|
$type = 'warning'; |
|
$result.='<p><span class="LC_warning">'.&mt('Warning: a published file of this names exists.').'</span></p>'; |
|
} |
} elsif ( -e $construct) { |
} elsif ( -e $construct) { |
$result.='<p><font color="red">'.&mt('Warning: target file exists!').'</font></p>'; |
$type = 'warning'; |
|
$result.='<p><span class="LC_warning">'.&mt('Warning: target file exists!').'</span></p>'; |
} |
} |
return $result; |
|
|
return ($type,$result); |
} |
} |
|
|
=pod |
=pod |
Line 323 sub cleanDest {
|
Line 336 sub cleanDest {
|
my ($newpath)=($dest=~m|(.*)/|); |
my ($newpath)=($dest=~m|(.*)/|); |
$newpath=&relativeDest($fn,$newpath,$uname); |
$newpath=&relativeDest($fn,$newpath,$uname); |
if (! -d "$newpath") { |
if (! -d "$newpath") { |
$request->print("<p><font color=\"red\">".&mt('You have requested to create file in directory [_1] which doesn\'t exist. The requested directory path has been removed from the requested file name.','"<tt>'.$newpath.'</tt>"')."</font></p>"); |
$request->print("<p><span class=\"LC_error\">".&mt('You have requested to create file in directory [_1] which doesn\'t exist. The requested directory path has been removed from the requested file name.','"<tt>'.$newpath.'</tt>"')."</span></p>"); |
$dest=~s|.*/||; |
$dest=~s|.*/||; |
} |
} |
} |
} |
if ($foundbad) { |
if ($foundbad) { |
$request->print("<p><font color=\"red\">".&mt('Invalid characters in requested name have been removed.')."</font></p>"); |
$request->print("<p><span class=\"LC_error\">".&mt('Invalid characters in requested name have been removed.')."</span></p>"); |
} |
} |
return $dest; |
return $dest; |
} |
} |
Line 475 sub Rename1 {
|
Line 488 sub Rename1 {
|
while ($newfilename=~m:/\.\./:) { |
while ($newfilename=~m:/\.\./:) { |
$newfilename=~ s:/[^/]+/\.\./:/:g; #remove dir/.. |
$newfilename=~ s:/[^/]+/\.\./:/:g; #remove dir/.. |
} |
} |
my $return=&exists($user, $domain, $newfilename); |
my ($type, $return)=&exists($user, $domain, $newfilename); |
$request->print($return); |
$request->print($return); |
if ($return =~/^Error:/) { |
if ($type eq 'error') { |
$request->print('<br /><a href="'.&url($fn).'">'.&mt('Cancel').'</a>'); |
$request->print('<br /><a href="'.&url($fn).'">'.&mt('Cancel').'</a>'); |
return; |
return; |
} |
} |
Line 603 sub Copy1 {
|
Line 616 sub Copy1 {
|
$newfilename=~ s:/[^/]+/\.\./:/:g; #remove dir/.. |
$newfilename=~ s:/[^/]+/\.\./:/:g; #remove dir/.. |
} |
} |
$request->print(&checksuffix($fn,$newfilename)); |
$request->print(&checksuffix($fn,$newfilename)); |
my $return=&exists($user, $domain, $newfilename); |
my ($type,$return)=&exists($user, $domain, $newfilename); |
$request->print($return); |
$request->print($return); |
if ($return =~/^Error:/) { |
if ($type eq 'error') { |
$request->print('<br /><a href="'.&url($fn).'">'.&mt('Cancel').'</a>'); |
$request->print('<br /><a href="'.&url($fn).'">'.&mt('Cancel').'</a>'); |
return; |
return; |
} |
} |
Line 661 causes the newdir operation to transitio
|
Line 674 causes the newdir operation to transitio
|
sub NewDir1 { |
sub NewDir1 { |
my ($request, $username, $domain, $fn, $newfilename, $mode) = @_; |
my ($request, $username, $domain, $fn, $newfilename, $mode) = @_; |
|
|
my $result=&exists($username,$domain,$newfilename); |
my ($type, $result)=&exists($username,$domain,$newfilename); |
|
$request->print($result); |
if ($result) { |
if ($result) { |
$request->print('<font color="red">'.$result.'</font></form>'); |
$request->print('</form>'); |
} else { |
} else { |
if ($mode eq 'testbank') { |
if ($mode eq 'testbank') { |
$request->print('<input type="hidden" name="callingmode" value="testbank">'); |
$request->print('<input type="hidden" name="callingmode" value="testbank">'); |
Line 737 sub NewFile1 {
|
Line 751 sub NewFile1 {
|
|
|
##Informs User (name).(number).(extension) not allowed |
##Informs User (name).(number).(extension) not allowed |
if($newfilename =~ /\.(\d+)\.(\w+)$/){ |
if($newfilename =~ /\.(\d+)\.(\w+)$/){ |
$r->print('<font color="red">'.$newfilename. |
$r->print('<span class="LC_error">'.$newfilename. |
' - '.&mt('Bad Filename').'<br />('.&mt('name').').('.&mt('number').').('.&mt('extension').') '. |
' - '.&mt('Bad Filename').'<br />('.&mt('name').').('.&mt('number').').('.&mt('extension').') '. |
' '.&mt('Not Allowed').'</font>'); |
' '.&mt('Not Allowed').'</span>'); |
return; |
return; |
} |
} |
if($newfilename =~ /(\:\:\:|\&\&\&|\_\_\_)/){ |
if($newfilename =~ /(\:\:\:|\&\&\&|\_\_\_)/){ |
$r->print('<font color="red">'.$newfilename. |
$r->print('<span class="LC_error">'.$newfilename. |
' - '.&mt('Bad Filename').'<br />('.&mt('Must not include').' '.$1.') '. |
' - '.&mt('Bad Filename').'<br />('.&mt('Must not include').' '.$1.') '. |
' '.&mt('Not Allowed').'</font>'); |
' '.&mt('Not Allowed').'</span>'); |
return; |
return; |
} |
} |
if ($newfilename !~ /\Q.$extension\E$/) { |
if ($newfilename !~ /\Q.$extension\E$/) { |
Line 756 sub NewFile1 {
|
Line 770 sub NewFile1 {
|
$newfilename.=".$extension"; |
$newfilename.=".$extension"; |
} |
} |
} |
} |
my $result=&exists($user,$domain,$newfilename); |
my ($type, $result)=&exists($user,$domain,$newfilename); |
if($result) { |
$request->print($result); |
$request->print('<span class="LC_error">'.$result.'</span></form>'); |
if ($type eq 'error') { |
|
$request->print('</form>'); |
} else { |
} else { |
|
|
$request->print('<p>'.&mt('Make new file').' '.&display($newfilename).'?</p>'); |
$request->print('<p>'.&mt('Make new file').' '.&display($newfilename).'?</p>'); |
$request->print('</form>'); |
$request->print('</form>'); |
$request->print('<form action="'.&url($newfilename). |
$request->print('<form action="'.&url($newfilename). |
Line 894 sub Rename2 {
|
Line 910 sub Rename2 {
|
my $oRN=$oldfile; |
my $oRN=$oldfile; |
my $nRN=$newfile; |
my $nRN=$newfile; |
unless (rename($oldfile,$newfile)) { |
unless (rename($oldfile,$newfile)) { |
$request->print('<font color="red">'.&mt('Error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('Error').': '.$!.'</span>'); |
return 0; |
return 0; |
} |
} |
## If old name.(extension) exits, move under new name. |
## If old name.(extension) exits, move under new name. |
Line 968 sub Delete2 {
|
Line 984 sub Delete2 {
|
my ($request, $user, $filename) = @_; |
my ($request, $user, $filename) = @_; |
if (-d $filename) { |
if (-d $filename) { |
unless (&empty_directory($filename,'Delete2')) { |
unless (&empty_directory($filename,'Delete2')) { |
$request->print('<font color="red"> '.&mt('Error: Directory Non Empty').'</font>'); |
$request->print('<span class="LC_error">'.&mt('Error: Directory Non Empty').'</span>'); |
return 0; |
return 0; |
} else { |
} else { |
if(-e $filename) { |
if(-e $filename) { |
unless(rmdir($filename)) { |
unless(rmdir($filename)) { |
$request->print('<font color="red">'.&mt('Error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('Error').': '.$!.'</span>'); |
return 0; |
return 0; |
} |
} |
} else { |
} else { |
Line 984 sub Delete2 {
|
Line 1000 sub Delete2 {
|
} else { |
} else { |
if(-e $filename) { |
if(-e $filename) { |
unless(unlink($filename)) { |
unless(unlink($filename)) { |
$request->print('<font color="red">'.&mt('Error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('Error').': '.$!.'</span>'); |
return 0; |
return 0; |
} |
} |
} else { |
} else { |
Line 1028 sub Copy2 {
|
Line 1044 sub Copy2 {
|
&Debug($request ,"Will try to copy $oldfile to $newfile"); |
&Debug($request ,"Will try to copy $oldfile to $newfile"); |
if(-e $oldfile) { |
if(-e $oldfile) { |
if ($oldfile eq $newfile) { |
if ($oldfile eq $newfile) { |
$request->print('<font color="red"> '.&mt('Warning').': '.&mt('Name of new file is the same as name of old file').' - '.&mt('no action taken').'.</font>'); |
$request->print('<span class="LC_error">'.&mt('Warning').': '.&mt('Name of new file is the same as name of old file').' - '.&mt('no action taken').'.</span>'); |
return 1; |
return 1; |
} |
} |
unless (copy($oldfile, $newfile)) { |
unless (copy($oldfile, $newfile)) { |
$request->print('<font color="red"> '.&mt('copy Error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('copy Error').': '.$!.'</span>'); |
return 0; |
return 0; |
} elsif (!chmod(0660, $newfile)) { |
} elsif (!chmod(0660, $newfile)) { |
$request->print('<font color="red"> '.&mt('chmod error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('chmod error').': '.$!.'</span>'); |
return 0; |
return 0; |
} elsif (-e $oldfile.'.meta' && |
} elsif (-e $oldfile.'.meta' && |
!copy($oldfile.'.meta', $newfile.'.meta') && |
!copy($oldfile.'.meta', $newfile.'.meta') && |
!chmod(0660, $newfile.'.meta')) { |
!chmod(0660, $newfile.'.meta')) { |
$request->print('<font color="red"> '.&mt('copy metadata error'). |
$request->print('<span class="LC_error">'.&mt('copy metadata error'). |
': '.$!.'</font>'); |
': '.$!.'</span>'); |
return 0; |
return 0; |
} else { |
} else { |
return 1; |
return 1; |
Line 1079 sub NewDir2 {
|
Line 1095 sub NewDir2 {
|
my ($request, $user, $newdirectory) = @_; |
my ($request, $user, $newdirectory) = @_; |
|
|
unless(mkdir($newdirectory, 02770)) { |
unless(mkdir($newdirectory, 02770)) { |
$request->print('<font color="red">'.&mt('Error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('Error').': '.$!.'</span>'); |
return 0; |
return 0; |
} |
} |
unless(chmod(02770, ($newdirectory))) { |
unless(chmod(02770, ($newdirectory))) { |
$request->print('<font color="red"> '.&mt('Error').': '.$!.'</font>'); |
$request->print('<span class="LC_error">'.&mt('Error').': '.$!.'</span>'); |
return 0; |
return 0; |
} |
} |
return 1; |
return 1; |
Line 1310 function writeDone() {
|
Line 1326 function writeDone() {
|
$r->print('<h3>'.&mt('Location').': '.&display($fn).'</h3>'); |
$r->print('<h3>'.&mt('Location').': '.&display($fn).'</h3>'); |
|
|
if (($uname ne $env{'user.name'}) || ($udom ne $env{'user.domain'})) { |
if (($uname ne $env{'user.name'}) || ($udom ne $env{'user.domain'})) { |
$r->print('<h3><font color="red">'.&mt('Co-Author').': '.$uname.' at '.$udom. |
$r->print('<h3><span class="LC_error">'.&mt('Co-Author').': '.$uname.' at '.$udom. |
'</font></h3>'); |
'</span></h3>'); |
} |
} |
|
|
|
|