#!/usr/bin/perl
##### IF THIS FILE OPENS IN YOUR BROWSER WHEN ATTEMPTING #####
##### TO DOWNLOAD, GO BACK A PAGE, RIGHT CLICK THE LINK #####
##### AND CHOOSE "SAVE TARGET AS." #####
require "global.cgi"; # We're going to need some functions
content();
# Get a list of members
opendir(MEMBERS,"members");
my @members = readdir(MEMBERS);
closedir(MEMBERS);
@members = grep(/\.dat$/,@members);
# Loop through the members
foreach my $member (@members) {
$member =~ s/\.dat//ig;
# Load the member's data
get_member($member);
foreach my $item ('permissions','denies') {
my $perms = $users{$member}{$item};
my $diff = $TOTAL_PERMISSIONS - length($perms);
if($diff > 0) {
for($x = 0; $x < $diff; $x++) { $perms .= "0"; }
print "$member\'s $item were $users{$member}{$item} (";
print length($users{$member}{$item});
print "). now $perms (";
print length($perms);
print "). Total required is length $TOTAL_PERMISSIONS. \n";
$users{$member}{$item} = $perms;
$done = 1;
}
}
if($done == 1) { $done = 0; print " \n"; }
}
# Write the changes back to disk
@members = keys %users;
foreach my $member (@members) {
#$users{$member}{'groups'} =~ s/BillyHeads//ig;
#$users{$member}{'groups'} =~ s/,{2,}//ig;
#$users{$member}{'groups'} =~ s/Master\s+(,{0,1})/Master BillyHeads$1/ig;
# Save the user
if($users{$member}{'memberstate'} && $member) { saveuser($member); }
# Announce what we did
print "$member is completed. \n";
}
print "
All users permissions have been given proper length.