* Forbid usernames that can be interpreted as titles with namespaces, as that leads...
authorBrion Vibber <brion@users.mediawiki.org>
Wed, 9 Nov 2005 07:56:39 +0000 (07:56 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Wed, 9 Nov 2005 07:56:39 +0000 (07:56 +0000)
RELEASE-NOTES
includes/User.php

index 8dc3a02..54fd1e9 100644 (file)
@@ -214,6 +214,8 @@ fully support the editing toolbar, but was found to be too confusing.
   localizable as 'datedefault' message. Tweaked lots of languages files...
 * Added local message cache feature ($wgLocalMessageCache), to reduce bandwidth
   requirements to the memcached server.
+* Forbid usernames that can be interpreted as titles with namespaces, as that
+  leads to hard-to-manage names.
 
 === Caveats ===
 
index 5f570f4..1e3809d 100644 (file)
@@ -201,6 +201,14 @@ class User {
                || strlen( $name ) > $wgMaxNameChars
                || $name != $wgContLang->ucfirst( $name ) )
                        return false;
+               
+               // Ensure that the name can't be misresolved as a different title,
+               // such as with extra namespace keys at the start.
+               $parsed = Title::newFromText( $name );
+               if( is_null( $parsed )
+                       || $parsed->getNamespace()
+                       || strcmp( $name, $parsed->getPrefixedText() ) )
+                       return false;
                else
                        return true;
        }