--- twiki.orig/lib/TWiki/UI/Manage.pm Sun Aug 8 06:40:48 2004
+++ twiki/lib/TWiki/UI/Manage.pm Wed Sep 1 18:34:07 2004
@@ -51,7 +51,7 @@
}
#check to see it the user we are trying to remove is a memebr of a group.
- #initinally we refuse to delte the user
+ #initinally we refuse to delete the user
#in a later implementation we will remove the from the group (if Access.pm implements it..)
my @groups = TWiki::Access::getGroupsUserIsIn( $wikiName );
my $numberOfGroups = $#groups;
@@ -545,6 +545,54 @@
}
}
closedir(DATA);
+
+################################################################################
+print "
fixing rcs permissions for pub/
\n";
+
+opendir(PUB, $TWiki::pubDir)
+ or die "Open $TWiki::pubDir failed";
+foreach my $web ( grep !/^\.+$/, readdir PUB )
+{
+ $web =~ /(.*)/; # untaint
+ $web = $1;
+
+ if ( -d "$TWiki::pubDir/$web" )
+ {
+ print "Unlocking $web
\n";
+
+ opendir(WEB, "$TWiki::pubDir/$web")
+ or die "Open $TWiki::pubDir/$web failed";
+ foreach my $topic ( grep !/^\.+$/, readdir WEB )
+ {
+ $topic =~ /(.*)/; # untaint
+ $topic = $1;
+
+ next unless -d "$TWiki::pubDir/$web/$topic";
+
+ print "$topic/ ";
+
+ opendir( ATTACH, "$TWiki::pubDir/$web/$topic" )
+ or die "Open $TWiki::pubDir/$web/$topic failed";
+ foreach my $attachment ( grep /.+,v/, readdir ATTACH ) {
+ $attachment =~ /(.*),v/; # untaint
+ $attachment = $1;
+
+ print "$attachment\n";
+
+ print `$TWiki::rcsDir/rcs -q -u -M $TWiki::pubDir/$web/$topic/$attachment`;
+ print `$TWiki::rcsDir/rcs -q -l $TWiki::pubDir/$web/$topic/$attachment`;
+# print `$TWiki::rcsDir/ci -mtestenv -t-missing_v $TWiki::pubDir/$web/$topic/$attachment`;
+# print `$TWiki::rcsDir/co -q -l -M $TWiki::pubDir/$web/$topic/$attachment`;
+ }
+ closedir( ATTACH );
+
+ print "
\n";
+ }
+ closedir(WEB);
+ }
+}
+closedir(PUB);
+
print "Re-locking finished
\n";
print "It is now safe to reload testenv \n";
print "