Merge "Avoid @backupGlobals in ExtensionRegistryTest"
[lhc/web/wiklou.git] / includes / specials / SpecialRandompage.php
index e4f31f4..73a88b9 100644 (file)
@@ -56,7 +56,9 @@ class RandomPage extends SpecialPage {
        public function execute( $par ) {
                global $wgContLang;
 
-               if ( $par ) {
+               if ( is_string( $par ) ) {
+                       // Testing for stringiness since we want to catch
+                       // the empty string to mean main namespace only.
                        $this->setNamespace( $wgContLang->getNsIndex( $par ) );
                }
 
@@ -64,6 +66,7 @@ class RandomPage extends SpecialPage {
 
                if ( is_null( $title ) ) {
                        $this->setHeaders();
+                       // Message: randompage-nopages, randomredirect-nopages
                        $this->getOutput()->addWikiMsg( strtolower( $this->getName() ) . '-nopages',
                                $this->getNsList(), count( $this->namespaces ) );
 
@@ -79,7 +82,7 @@ class RandomPage extends SpecialPage {
        /**
         * Get a comma-delimited list of namespaces we don't have
         * any pages in
-        * @return String
+        * @return string
         */
        private function getNsList() {
                global $wgContLang;
@@ -97,13 +100,13 @@ class RandomPage extends SpecialPage {
 
        /**
         * Choose a random title.
-        * @return Title object (or null if nothing to choose from)
+        * @return Title|null Title object (or null if nothing to choose from)
         */
        public function getRandomTitle() {
                $randstr = wfRandom();
                $title = null;
 
-               if ( !wfRunHooks(
+               if ( !Hooks::run(
                        'SpecialRandomGetRandomTitle',
                        array( &$randstr, &$this->isRedir, &$this->namespaces, &$this->extra, &$title )
                ) ) {
@@ -143,7 +146,6 @@ class RandomPage extends SpecialPage {
                        ), $this->extra ),
                        'options' => array(
                                'ORDER BY' => 'page_random',
-                               'USE INDEX' => 'page_random',
                                'LIMIT' => 1,
                        ),
                        'join_conds' => array()