X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fspecials%2FSpecialBrokenRedirects.php;h=b730ecd789d1c613040c7a9493b0f9623a0a823f;hb=e7720b8f8e09287384ddee271641d1b1721318bb;hp=17533968a0d93d6119e011f4c303c0524f2436f9;hpb=81b6a9fc449a8b5ff750aaa058c62753a903c5c4;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specials/SpecialBrokenRedirects.php b/includes/specials/SpecialBrokenRedirects.php index 17533968a0..cf9ae07187 100644 --- a/includes/specials/SpecialBrokenRedirects.php +++ b/includes/specials/SpecialBrokenRedirects.php @@ -21,6 +21,9 @@ * @ingroup SpecialPage */ +use Wikimedia\Rdbms\ResultWrapper; +use Wikimedia\Rdbms\IDatabase; + /** * A special page listing redirects to non existent page. Those should be * fixed to point to an existing page. @@ -63,6 +66,7 @@ class BrokenRedirectsPage extends QueryPage { 'value' => 'p1.page_title', 'rd_namespace', 'rd_title', + 'rd_fragment', ], 'conds' => [ // Exclude pages that don't exist locally as wiki pages, @@ -99,7 +103,7 @@ class BrokenRedirectsPage extends QueryPage { function formatResult( $skin, $result ) { $fromObj = Title::makeTitle( $result->namespace, $result->title ); if ( isset( $result->rd_title ) ) { - $toObj = Title::makeTitle( $result->rd_namespace, $result->rd_title ); + $toObj = Title::makeTitle( $result->rd_namespace, $result->rd_title, $result->rd_fragment ); } else { $blinks = $fromObj->getBrokenLinksFrom(); # TODO: check for redirect, not for links if ( $blinks ) { @@ -109,12 +113,13 @@ class BrokenRedirectsPage extends QueryPage { } } + $linkRenderer = $this->getLinkRenderer(); // $toObj may very easily be false if the $result list is cached if ( !is_object( $toObj ) ) { - return '' . Linker::link( $fromObj ) . ''; + return '' . $linkRenderer->makeLink( $fromObj ) . ''; } - $from = Linker::linkKnown( + $from = $linkRenderer->makeKnownLink( $fromObj, null, [], @@ -128,28 +133,22 @@ class BrokenRedirectsPage extends QueryPage { // check, if the content model is editable through action=edit ContentHandler::getForTitle( $fromObj )->supportsDirectEditing() ) { - $links[] = Linker::linkKnown( + $links[] = $linkRenderer->makeKnownLink( $fromObj, - $this->msg( 'brokenredirects-edit' )->escaped(), + $this->msg( 'brokenredirects-edit' )->text(), [], [ 'action' => 'edit' ] ); } - $to = Linker::link( - $toObj, - null, - [], - [], - [ 'broken' ] - ); + $to = $linkRenderer->makeBrokenLink( $toObj, $toObj->getFullText() ); $arr = $this->getLanguage()->getArrow(); $out = $from . $this->msg( 'word-separator' )->escaped(); if ( $this->getUser()->isAllowed( 'delete' ) ) { - $links[] = Linker::linkKnown( + $links[] = $linkRenderer->makeKnownLink( $fromObj, - $this->msg( 'brokenredirects-delete' )->escaped(), + $this->msg( 'brokenredirects-delete' )->text(), [], [ 'action' => 'delete' ] );