X-Git-Url: https://git.p6c8.net/devedit.git/blobdiff_plain/1574cddbc1107a6119116328e9696a65108f867b..4308edd69b75085c3b49f90f260f593783fbc93b:/modules/Command.pm diff --git a/modules/Command.pm b/modules/Command.pm index 1479e2a..4e7e365 100644 --- a/modules/Command.pm +++ b/modules/Command.pm @@ -6,7 +6,7 @@ package Command; # Execute Dev-Editor's commands # # Author: Patrick Canterino -# Last modified: 2004-10-22 +# Last modified: 2004-10-30 # use strict; @@ -222,9 +222,10 @@ sub exec_show($$) $tpl->fillin("DIR",upper_path($virtual)); $tpl->fillin("URL",equal_url($config->{'httproot'},$virtual)); $tpl->fillin("SCRIPT",$script); - $tpl->fillin("CONTENT",encode_entities($$content)); $tpl->parse_if_block("editable",-r $physical && -w $physical && -T $physical && not ($config->{'max_file_size'} && $size > $config->{'max_file_size'}) && $uselist->unused($virtual)); + + $tpl->fillin("CONTENT",encode_entities($$content)); } } } @@ -270,7 +271,7 @@ sub exec_beginedit($$) return error($config->{'errors'}->{'file_too_large'},upper_path($virtual),{SIZE => $config->{'max_file_size'}}) } else - { + { # Text file $uselist->add_file($virtual); @@ -771,7 +772,11 @@ sub exec_chprop($$) chmod($oct_mode,$physical); } - chgrp($group,$physical) if($group); + if($group) + { + return error($config->{'errors'}->{'invalid_group'},$dir,{GROUP => $group}) unless($group =~ /^[a-z0-9_]+[a-z0-9_-]*$/i); + system("chgrp",$group,$physical); + } return devedit_reload({command => 'show', file => $dir}); } @@ -905,17 +910,22 @@ sub exec_about($$) # Dev-Editor is running on a system which allows users and groups # So we display the user and the group of our process + require POSIX; + + my $uid = POSIX::getuid; + my $gid = POSIX::getgid; + $tpl->parse_if_block("users",1); # ID's of user and group - $tpl->fillin("UID",$<); - $tpl->fillin("GID",$(); + $tpl->fillin("UID",$uid); + $tpl->fillin("GID",$gid); # Names of user and group - $tpl->fillin("USER",getpwuid($<)); - $tpl->fillin("GROUP",getgrgid($()); + $tpl->fillin("USER",getpwuid($uid)); + $tpl->fillin("GROUP",getgrgid($gid)); } else {