]> git.p6c8.net - devedit.git/blobdiff - modules/Command.pm
- Dev-Editor is now able to forbid accessing a file using the configuration file
[devedit.git] / modules / Command.pm
index 891b214640b4b838fd00f4a1cc9346d3f51bdb1a..b827368f0e4232d41acd717ae19bf3747813c5d8 100644 (file)
@@ -6,7 +6,7 @@ package Command;
 # Execute Dev-Editor's commands
 #
 # Author:        Patrick Canterino <patrick@patshaping.de>
-# Last modified: 2005-05-15
+# Last modified: 2005-06-09
 #
 
 use strict;
@@ -31,17 +31,17 @@ use Template;
 my $script = encode_html($ENV{'SCRIPT_NAME'});
 my $users  = eval('getpwuid(0)') && eval('getgrgid(0)');
 
-my %dispatch = ('show'       => \&exec_show,
-                'beginedit'  => \&exec_beginedit,
-                'endedit'    => \&exec_endedit,
-                'mkdir'      => \&exec_mkdir,
-                'mkfile'     => \&exec_mkfile,
-                'upload'     => \&exec_upload,
-                'copy'       => \&exec_copy,
-                'rename'     => \&exec_rename,
-                'remove'     => \&exec_remove,
-                'chprop'     => \&exec_chprop,
-                'about'      => \&exec_about
+my %dispatch = ('show'      => \&exec_show,
+                'beginedit' => \&exec_beginedit,
+                'endedit'   => \&exec_endedit,
+                'mkdir'     => \&exec_mkdir,
+                'mkfile'    => \&exec_mkfile,
+                'upload'    => \&exec_upload,
+                'copy'      => \&exec_copy,
+                'rename'    => \&exec_rename,
+                'remove'    => \&exec_remove,
+                'chprop'    => \&exec_chprop,
+                'about'     => \&exec_about
                );
 
 ### Export ###
@@ -148,6 +148,7 @@ sub exec_show($$)
    $dtpl->fillin('DATE',encode_html(strftime($config->{'timeformat'},($config->{'use_gmt'}) ? gmtime($stat[9]) : localtime($stat[9]))));
    $dtpl->fillin('URL',equal_url(encode_html($config->{'httproot'}),$virt_path->{'html'}));
 
+   $dtpl->parse_if_block('forbidden',is_forbidden_file($config->{'forbidden'},$virt_path->{'normal'}));
    $dtpl->parse_if_block('readable',-r $phys_path && -x $phys_path);
    $dtpl->parse_if_block('users',$users && -o $phys_path);
 
@@ -182,6 +183,7 @@ sub exec_show($$)
    $ftpl->parse_if_block('writeable',-w $phys_path);
    $ftpl->parse_if_block('binary',-B $phys_path);
 
+   $ftpl->parse_if_block('forbidden',is_forbidden_file($config->{'forbidden'},$virt_path->{'normal'}));
    $ftpl->parse_if_block('viewable',(-r $phys_path && -T $phys_path && not $too_large) || -l $phys_path);
    $ftpl->parse_if_block('editable',(-r $phys_path && -w $phys_path && -T $phys_path && not $too_large) && not -l $phys_path);
 

patrick-canterino.de