Allows the following syntax to rename a page AND all of its subpages:
=OldPageName/*=NewPageName?
4369a4370
> "<tt>=OldPageName/*=NewPageName</tt> -- renames all subpages too<BR>",
4403,4405c4404,4421
< } elsif (/^\=(?:\[\[)?([^]=]+)(?:\]\])?\=(?:\[\[)?([^]=]+)(?:\]\])?/) {
< &RenamePage($1, $2, $doRC, $doText);
< } elsif (/^\|(?:\[\[)?([^]|]+)(?:\]\])?\|(?:\[\[)?([^]|]+)(?:\]\])?/) {
---
> }
> elsif (/^\=(?:\[\[)?([^]=]+)(?:\]\])?\=(?:\[\[)?([^]=]+)(?:\]\])?/) {
> my $GivenPage = $1 ;
> my $GivenNewName = $2;
> if( $GivenPage =~ s[\/\*][] ) {
> print "Renaming subpages of $GivenPage too...<br>";
> foreach( &AllSubPagesList( $GivenPage ) ) {
> my $NewSubName = $_;
> $NewSubName =~ s[$GivenPage][$GivenNewName]i;
> print "renaming " . $_ . " to " . $NewSubName ."<BR>";
> &RenamePage($_, $NewSubName, $doRC, $doText)
> }
> }
> # rename the page itself
> print "renaming " . $GivenPage . " to " . $GivenNewName ."<BR>";
> &RenamePage($GivenPage, $GivenNewName, $doRC, $doText);
> }
> elsif (/^\|(?:\[\[)?([^]|]+)(?:\]\])?\|(?:\[\[)?([^]|]+)(?:\]\])?/) {
First line (4369a4370) comes under subroutine DoEditLinks? between these two lines:
"to NewPageName and updates links to OldPageName.<br>\n",
"<tt>=OldPageName/*=NewPageName</tt> -- renames all subpages too<BR>",
"<tt>|OldPageName|NewPageName</tt> -- Changes links to OldPageName ",
Second block (4403,4405c4404,4421) replaces this line in the subroutine UpdateLinksList:
} elsif (/^\=(?:\[\[)?([^]=]+)(?:\]\])?\=(?:\[\[)?([^]=]+)(?:\]\])?/) {
&RenamePage($1, $2, $doRC, $doText);
} elsif (/^\|(?:\[\[)?([^]|]+)(?:\]\])?\|(?:\[\[)?([^]|]+)(?:\]\])?/) {
with these lines:
} elsif (/^\=(?:\[\[)?([^]=]+)(?:\]\])?\=(?:\[\[)?([^]=]+)(?:\]\])?/) {
my $GivenPage = $1;
my $GivenNewName = $2;
if ($GivenPage =~ s[\/\*][]) {
print "Renaming subpages of $GivenPage too...<br>";
foreach (&AllSubPagesList($GivenPage)) {
my $NewSubName = $_;
$NewSubName =~ s[$GivenPage][$GivenNewName]i;
print "renaming " . $_ . " to " . $NewSubName ."<BR>";
&RenamePage($_, $NewSubName, $doRC, $doText);
}
}
# rename the page itself
print "renaming " . $GivenPage . " to " . $GivenNewName ."<BR>";
&RenamePage($GivenPage, $GivenNewName, $doRC, $doText);
} elsif (/^\|(?:\[\[)?([^]|]+)(?:\]\])?\|(?:\[\[)?([^]|]+)(?:\]\])?/) {