link_replace = You are not allowed to overwrite symbolic links.
mkdir_failed = Could not create directory '{DIR}'.
mkfile_failed = Could not create file '{FILE}'.
+no_ae = Perl module <tt>Archive::Extract</tt> is not available.
+no_archive = '{FILE}' is not an archive file.
no_copy = You have not enough permissions to copy this file.
no_delete = You have not enough permissions to delete this file.
no_dir_access = You have not enough permissions to access this directory.
rename_failed = Could not move/rename '{FILE}' to '{NEW_FILE}'.
rename_root = You are not allowed to move/rename the root directory.
text_to_binary = You are not allowed to write text data into a binary file.
+unpack_failed = Unpacking of archive file '{FILE}' failed.
+unpack_no_dir = You cannot unpack archive file '{FILE}' to an ordinary file or a symbolic ('{NEW_FILE}' is not a directory).
# End of configuration file
\ No newline at end of file
# Execute Dev-Editor's commands
#
# Author: Patrick Canterino <patrick@patshaping.de>
-# Last modified: 2010-10-26
+# Last modified: 2010-10-30
#
# Copyright (C) 1999-2000 Roland Bluethgen, Frank Schoenmann
# Copyright (C) 2003-2009 Patrick Canterino
my $new_virtual = $data->{'new_virtual'};
my $cgi = $data->{'cgi'};
+ return error($config->{'errors'}->{'no_ae'},$dir) unless($File::Access::has_archive_extract);
+ return error($config->{'errors'}->{'no_archive'},$dir,{FILE => encode_html($virtual)}) unless(is_archive($physical));
+
if($new_physical)
{
- archive_unpack($physical,$new_physical);
+ return error($config->{'errors'}->{'unpack_no_dir'},$dir,{FILE => encode_html($virtual), NEW_FILE => encode_html($new_virtual)}) if(-l $new_physical || not -d $new_physical);
+
+ my $return_unpack = archive_unpack($physical,$new_physical);
+
+ return error($config->{'errors'}->{'unpack_failed'},$dir,{FILE => encode_html($virtual), AE_ERROR => ''}) unless($return_unpack);
+
return devedit_reload({command => 'show', file => $new_virtual});
}
else
$tpl->fillin('PERL_PROG',encode_html($^X));
$tpl->fillin('PERL_VER', sprintf('%vd',$^V));
+
+ $tpl->parse_if_block('PERL_ARCHIVE_EXTRACT',$File::Access::has_archive_extract);
# Information about the server