X-Git-Url: https://git.p6c8.net/devedit.git/blobdiff_plain/baa16479399badf33a72089621e9c2ddae96444c..02321769f658fbe95c046c17f0c5b4de759d282f:/modules/File/Access.pm diff --git a/modules/File/Access.pm b/modules/File/Access.pm index 6c3862b..bc1e37d 100644 --- a/modules/File/Access.pm +++ b/modules/File/Access.pm @@ -7,7 +7,7 @@ package File::Access; # with only one command # # Author: Patrick Canterino -# Last modified: 2003-12-01 +# Last modified: 2004-08-01 # use strict; @@ -20,10 +20,31 @@ use Carp qw(croak); use base qw(Exporter); -@EXPORT = qw(dir_read +@EXPORT = qw(chgrp + dir_read file_create file_read - file_save); + file_save + file_unlock); + +# chgrp() +# +# Change the group of files or directories +# +# Params: 1. Group name +# 2. List of files +# +# Return: Number of files group successfully changed +# (or false) + +sub chgrp($@) +{ + my ($group,@files) = @_; + my $gid = ($group !~ /^\d+$/) ? getgrnam($group): $group; + + return unless($gid); + return chown(-1,$gid,@files); +} # dir_read() # @@ -49,7 +70,7 @@ sub dir_read($) # Sort the entries - @entries = sort(@entries); + @entries = sort {uc($a) cmp uc($b)} @entries; my @files; my @dirs; @@ -134,6 +155,25 @@ sub file_save($$) return 1; } +# file_unlock() +# +# Remove a file from the list of files in use +# +# Params: 1. File::UseList object +# 2. File to remove +# +# Return: -nothing- + +sub file_unlock($$) +{ + my ($uselist,$file) = @_; + + $uselist->remove_file($file); + $uselist->save; + + return; +} + # it's true, baby ;-) 1;