Merge "Move section ID fallbacks into headers themselves"
[lhc/web/wiklou.git] / includes / specials / SpecialListredirects.php
index ace6d02..f81c03c 100644 (file)
@@ -24,6 +24,9 @@
  * @author Rob Church <robchur@gmail.com>
  */
 
+use Wikimedia\Rdbms\ResultWrapper;
+use Wikimedia\Rdbms\IDatabase;
+
 /**
  * Special:Listredirects - Lists all the redirects on the wiki.
  * @ingroup SpecialPage
@@ -83,7 +86,10 @@ class ListredirectsPage extends QueryPage {
                $batch = new LinkBatch;
                foreach ( $res as $row ) {
                        $batch->add( $row->namespace, $row->title );
-                       $batch->addObj( $this->getRedirectTarget( $row ) );
+                       $redirTarget = $this->getRedirectTarget( $row );
+                       if ( $redirTarget ) {
+                               $batch->addObj( $redirTarget );
+                       }
                }
                $batch->execute();
 
@@ -91,6 +97,10 @@ class ListredirectsPage extends QueryPage {
                $res->seek( 0 );
        }
 
+       /**
+        * @param stdClass $row
+        * @return Title|null
+        */
        protected function getRedirectTarget( $row ) {
                if ( isset( $row->rd_title ) ) {
                        return Title::makeTitle( $row->rd_namespace,
@@ -111,9 +121,10 @@ class ListredirectsPage extends QueryPage {
         * @return string
         */
        function formatResult( $skin, $result ) {
+               $linkRenderer = $this->getLinkRenderer();
                # Make a link to the redirect itself
                $rd_title = Title::makeTitle( $result->namespace, $result->title );
-               $rd_link = Linker::link(
+               $rd_link = $linkRenderer->makeLink(
                        $rd_title,
                        null,
                        [],
@@ -126,7 +137,7 @@ class ListredirectsPage extends QueryPage {
                        # Make a link to the destination page
                        $lang = $this->getLanguage();
                        $arr = $lang->getArrow() . $lang->getDirMark();
-                       $targetLink = Linker::link( $target );
+                       $targetLink = $linkRenderer->makeLink( $target, $target->getFullText() );
 
                        return "$rd_link $arr $targetLink";
                } else {