the case of namespaces containing non-ASCII characters. This
should be legal, but lead to problems when generating links to
pages in such namespaces. The URL encoding of the non-ASCII
characters prevented the $InterSitePattern from matching. Instead
of using this regular expression, we now try and guess at the
string using URL constraints ([^/?&;=]+), URL decoding it, and
then checking the $InterSitePattern.
GetAuthorLink to make sure the author link is never considered
invalid using NewNamespaceValidId.
(NamespaceValidId): Deleted.
(NewNamespaceValidId): Fully featured replacement only used by
GetAuthorLink. $NamespaceSlashing remains unused.
$NamespaceRoot because it will be used below when redirecting. Not
setting it will cause redirection to the Main namespace to produce
a wrong edit link to the source page.
(NamespacesInitVariables): Get rid of various Init() calls because
they are all handled in ReInit(). Reset @IndexList so that
AllPagesList will actually do something.
parameter for validity and complain if it is not valid. We can't
do that with path_info, but this is good enough, because it allows
us to verify namespaces typed into forms (eg. from
Oddwiki:Startup).
actions matching $FullUrlPattern, as that breaks localnames.pl.
Since $action is already URL-encoded, however, we do the same test
as in ScriptLink: $UrlProtocols followed by the URL-encoded colon:
%3a.
newline when reading rc.log file. This removes an incompatibility
between the module and page clusters (otherwise all pages end up
in the "\n" cluster).
parsing all the log files recursively instead of doing the RSS
thing.
(NamespaceBrowseRc, NamespaceInternalRc): Deleted.
(NamespaceRcLines): New. Splices namespace into the rc lines.
(NewNamespaceScriptLink): New. Splices namespace out of the link
into the script name.
$NamespaceCurrent; don't change $Action{rc}.
(NewNamespacesInitVariables): Don't print header and footer.
(NewNamespaceDoRc): New replacement for DoRc.