Revert r21363; triggers PHP notices due to failed lookups for interwiki prefixes
authorBrion Vibber <brion@users.mediawiki.org>
Thu, 19 Apr 2007 13:40:06 +0000 (13:40 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Thu, 19 Apr 2007 13:40:06 +0000 (13:40 +0000)
includes/Title.php
languages/Language.php

index 531944a..d7b29ec 100644 (file)
@@ -1645,7 +1645,12 @@ class Title {
                        $m = array();
                        if ( preg_match( "/^(.+?)_*:_*(.*)$/S", $dbkey, $m ) ) {
                                $p = $m[1];
-                               if ( $ns = $wgContLang->getNsIndex( $p )) {
+                               $lowerNs = $wgContLang->lc( $p );
+                               if ( $ns = Namespace::getCanonicalIndex( $lowerNs ) ) {
+                                       # Canonical namespace
+                                       $dbkey = $m[2];
+                                       $this->mNamespace = $ns;
+                               } elseif ( $ns = $wgContLang->getNsIndex( $lowerNs )) {
                                        # Ordinary namespace
                                        $dbkey = $m[2];
                                        $this->mNamespace = $ns;
index cc12fe9..4f21791 100644 (file)
@@ -228,23 +228,7 @@ class Language {
        }
 
        /**
-        * Get a namespace key by value, case insensitive.
-        * Only matches namespace names for the current language, not the
-        * canonical ones defined in Namespace.php.
-        *
-        * @param string $text
-        * @return mixed An integer if $text is a valid value otherwise false
-        */
-       function getLocalNsIndex( $text ) {
-               $this->load();
-               $lctext = $this->lc($text);
-               if( ( $ns = $this->mNamespaceIds[$lctext] ) !== null ) return $ns;
-               return false;
-       }
-
-       /**
-        * Get a namespace key by value, case insensitive.  Canonical namespace
-        * names override custom ones defined for the current language.
+        * Get a namespace key by value, case insensetive.
         *
         * @param string $text
         * @return mixed An integer if $text is a valid value otherwise false
@@ -252,9 +236,7 @@ class Language {
        function getNsIndex( $text ) {
                $this->load();
                $lctext = $this->lc($text);
-               if( ( $ns = Namespace::getCanonicalIndex( $lctext ) ) !== null ) return $ns;
-               if( ( $ns = $this->mNamespaceIds[$lctext] ) !== null ) return $ns;
-               return false;
+               return isset( $this->mNamespaceIds[$lctext] ) ? $this->mNamespaceIds[$lctext] : false;
        }
 
        /**