Phantom42 has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/325339

Change subject: Replace Linker::link() usage with LinkRendedrer
......................................................................

Replace Linker::link() usage with LinkRendedrer

Linker::link() replaced with LinkRenderer in some pages in includes/specials

Bug: T149346
Change-Id: I937bdc99d1342e73f20b8437a9b55dffb04161c5
---
M includes/specials/SpecialRecentchanges.php
M includes/specials/SpecialRevisiondelete.php
M includes/specials/SpecialSearch.php
M includes/specials/SpecialUncategorizedcategories.php
M includes/specials/SpecialUnwatchedpages.php
M includes/specials/SpecialWhatlinkshere.php
M includes/specials/pagers/AllMessagesTablePager.php
M includes/specials/pagers/BlockListPager.php
M includes/specials/pagers/ContribsPager.php
M includes/specials/pagers/DeletedContribsPager.php
M includes/specials/pagers/ImageListPager.php
11 files changed, 82 insertions(+), 65 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/39/325339/1

diff --git a/includes/specials/SpecialRecentchanges.php 
b/includes/specials/SpecialRecentchanges.php
index cd3299c..a7918a4 100644
--- a/includes/specials/SpecialRecentchanges.php
+++ b/includes/specials/SpecialRecentchanges.php
@@ -664,12 +664,13 @@
                }
                unset( $value );
 
-               $text = htmlspecialchars( $title );
                if ( $active ) {
-                       $text = '<strong>' . $text . '</strong>';
+                       $text = new HtmlArmor( '<strong>' . $title . 
'</strong>' );
+               } else {
+                       $text = new HtmlArmor( $title );
                }
 
-               return Linker::linkKnown( $this->getPageTitle(), $text, [], 
$params );
+               return $this->getLinkRenderer()->makeKnownLink( 
$this->getPageTitle(), $text, [], $params );
        }
 
        /**
diff --git a/includes/specials/SpecialRevisiondelete.php 
b/includes/specials/SpecialRevisiondelete.php
index 8780c56..4b0fa00 100644
--- a/includes/specials/SpecialRevisiondelete.php
+++ b/includes/specials/SpecialRevisiondelete.php
@@ -466,9 +466,9 @@
                                Xml::closeElement( 'form' ) . "\n";
                        // Show link to edit the dropdown reasons
                        if ( $this->getUser()->isAllowed( 'editinterface' ) ) {
-                               $link = Linker::linkKnown(
+                               $link = $this->getLinkRenderer()->makeKnownLink(
                                        $this->msg( 'revdelete-reason-dropdown' 
)->inContentLanguage()->getTitle(),
-                                       $this->msg( 'revdelete-edit-reasonlist' 
)->escaped(),
+                                       $this->msg( 'revdelete-edit-reasonlist' 
)->text(),
                                        [],
                                        [ 'action' => 'edit' ]
                                );
diff --git a/includes/specials/SpecialSearch.php 
b/includes/specials/SpecialSearch.php
index 9f83832..abc2342 100644
--- a/includes/specials/SpecialSearch.php
+++ b/includes/specials/SpecialSearch.php
@@ -499,9 +499,11 @@
                }
                $stParams = array_merge( $params, $this->powerSearchOptions() );
 
-               $suggest = Linker::linkKnown(
+               $linkRenderer = $this->getLinkRenderer();
+
+               $suggest = $linkRenderer->makeKnownLink(
                        $this->getPageTitle(),
-                       $textMatches->getSuggestionSnippet() ?: null,
+                       new HtmlArmor( $textMatches->getSuggestionSnippet() ) 
?: null,
                        [ 'id' => 'mw-search-DYM-suggestion' ],
                        $stParams
                );
@@ -535,18 +537,20 @@
                }
                $stParams = array_merge( $params, $this->powerSearchOptions() );
 
-               $rewritten = Linker::linkKnown(
+               $linkRenderer = $this->getLinkRenderer();
+
+               $rewritten = $linkRenderer->makeKnownLink(
                        $this->getPageTitle(),
-                       $textMatches->getQueryAfterRewriteSnippet() ?: null,
+                       new HtmlArmor( 
$textMatches->getQueryAfterRewriteSnippet() ) ?: null,
                        [ 'id' => 'mw-search-DYM-rewritten' ],
                        $stParams
                );
 
                $stParams['search'] = $term;
                $stParams['runsuggestion'] = 0;
-               $original = Linker::linkKnown(
+               $original = $linkRenderer->makeKnownLink(
                        $this->getPageTitle(),
-                       htmlspecialchars( $term ),
+                       $term,
                        [ 'id' => 'mw-search-DYM-original' ],
                        $stParams
                );
@@ -766,9 +770,11 @@
                Hooks::run( 'ShowSearchHitTitle',
                        [ &$link_t, &$titleSnippet, $result, $terms, $this, 
&$query ] );
 
-               $link = Linker::linkKnown(
+               $linkRenderer = $this->getLinkRenderer();
+
+               $link = $linkRenderer->makeKnownLink(
                        $link_t,
-                       $titleSnippet,
+                       new HtmlArmor( $titleSnippet ),
                        [ 'data-serp-pos' => $position ], // HTML attributes
                        $query
                );
@@ -802,7 +808,7 @@
 
                        $redirect = "<span class='searchalttitle'>" .
                                $this->msg( 'search-redirect' )->rawParams(
-                                       Linker::linkKnown( $redirectTitle, 
$redirectText ) )->text() .
+                                       $linkRenderer->makeKnownLink( 
$redirectTitle, new HtmlArmor( $redirectText ) ) )->text() .
                                "</span>";
                }
 
@@ -814,7 +820,7 @@
 
                        $section = "<span class='searchalttitle'>" .
                                $this->msg( 'search-section' )->rawParams(
-                                       Linker::linkKnown( $sectionTitle, 
$sectionText ) )->text() .
+                                       $linkRenderer->makeKnownLink( 
$sectionTitle, new HtmlArmor( $sectionText ) ) )->text() .
                                "</span>";
                }
 
@@ -971,6 +977,8 @@
                        return '';
                }
 
+               $linkRenderer = $this->getLinkRenderer();
+
                $title = $result->getTitle();
 
                $titleSnippet = $result->getTitleSnippet();
@@ -979,9 +987,9 @@
                        $titleSnippet = null;
                }
 
-               $link = Linker::linkKnown(
+               $link = $linkRenderer->makeKnownLink(
                        $title,
-                       $titleSnippet
+                       new HtmlArmor( $titleSnippet )
                );
 
                // format redirect if any
@@ -995,7 +1003,7 @@
 
                        $redirect = "<span class='searchalttitle'>" .
                                $this->msg( 'search-redirect' )->rawParams(
-                                       Linker::linkKnown( $redirectTitle, 
$redirectText ) )->text() .
+                                       $linkRenderer->makeKnownLink( 
$redirectTitle, new HtmlArmor( $redirectText ) ) )->text() .
                                "</span>";
                }
 
@@ -1013,7 +1021,7 @@
                        }
                        // "more results" link (special page stuff could be 
localized, but we might not know target lang)
                        $searchTitle = Title::newFromText( 
$title->getInterwiki() . ":Special:Search" );
-                       $searchLink = Linker::linkKnown(
+                       $searchLink = $linkRenderer->makeKnownLink(
                                $searchTitle,
                                $this->msg( 'search-interwiki-more' )->text(),
                                [],
diff --git a/includes/specials/SpecialUncategorizedcategories.php 
b/includes/specials/SpecialUncategorizedcategories.php
index 1cc40a9..86d8f89 100644
--- a/includes/specials/SpecialUncategorizedcategories.php
+++ b/includes/specials/SpecialUncategorizedcategories.php
@@ -42,6 +42,6 @@
                $title = Title::makeTitle( NS_CATEGORY, $result->title );
                $text = $title->getText();
 
-               return Linker::linkKnown( $title, htmlspecialchars( $text ) );
+               return $this->getLinkRenderer()->makeKnownLink( $title, $text );
        }
 }
diff --git a/includes/specials/SpecialUnwatchedpages.php 
b/includes/specials/SpecialUnwatchedpages.php
index ae375b2..59509d9 100644
--- a/includes/specials/SpecialUnwatchedpages.php
+++ b/includes/specials/SpecialUnwatchedpages.php
@@ -116,10 +116,10 @@
 
                $text = $wgContLang->convert( $nt->getPrefixedText() );
 
-               $plink = Linker::linkKnown( $nt, htmlspecialchars( $text ) );
-               $wlink = Linker::linkKnown(
+               $plink = $this->getLinkRenderer()->makeKnownLink( $nt, $text );
+               $wlink = $this->getLinkRenderer()->makeKnownLink(
                        $nt,
-                       $this->msg( 'watch' )->escaped(),
+                       $this->msg( 'watch' )->text(),
                        [ 'class' => 'mw-watch-link' ],
                        [ 'action' => 'watch' ]
                );
diff --git a/includes/specials/SpecialWhatlinkshere.php 
b/includes/specials/SpecialWhatlinkshere.php
index 1ead290..de506c1 100644
--- a/includes/specials/SpecialWhatlinkshere.php
+++ b/includes/specials/SpecialWhatlinkshere.php
@@ -327,7 +327,7 @@
                        $query = [];
                }
 
-               $link = Linker::linkKnown(
+               $link = $this->getLinkRenderer()->makeKnownLink(
                        $nt,
                        null,
                        $row->page_is_redirect ? [ 'class' => 'mw-redirect' ] : 
[],
@@ -376,9 +376,11 @@
                        $title = $this->getPageTitle();
                }
 
+               $linkRenderer = $this->getLinkRenderer();
+
                // always show a "<- Links" link
                $links = [
-                       'links' => Linker::linkKnown(
+                       'links' => $linkRenderer->makeKnownLink(
                                $title,
                                $text,
                                [],
@@ -393,7 +395,7 @@
                        // check, if the content model is editable through 
action=edit
                        ContentHandler::getForTitle( $target 
)->supportsDirectEditing()
                ) {
-                       $links['edit'] = Linker::linkKnown(
+                       $links['edit'] = $linkRenderer->makeKnownLink(
                                $target,
                                $editText,
                                [],
@@ -406,7 +408,7 @@
        }
 
        function makeSelfLink( $text, $query ) {
-               return Linker::linkKnown(
+               return $this->getLinkRenderer()->makeKnownLink(
                        $this->selfTitle,
                        $text,
                        [],
diff --git a/includes/specials/pagers/AllMessagesTablePager.php 
b/includes/specials/pagers/AllMessagesTablePager.php
index 5609310..4d9f21a 100644
--- a/includes/specials/pagers/AllMessagesTablePager.php
+++ b/includes/specials/pagers/AllMessagesTablePager.php
@@ -19,6 +19,8 @@
  * @ingroup Pager
  */
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * Use TablePager for prettified output. We have to pretend that we're
  * getting data from a table when in fact not all of it comes from the 
database.
@@ -297,6 +299,8 @@
        }
 
        function formatValue( $field, $value ) {
+               $linkRenderer = 
MediaWikiServices::getInstance()->getLinkRenderer();
+
                switch ( $field ) {
                        case 'am_title' :
                                $title = Title::makeTitle( NS_MEDIAWIKI, $value 
. $this->suffix );
@@ -313,26 +317,14 @@
                                );
 
                                if ( $this->mCurrentRow->am_customised ) {
-                                       $title = Linker::linkKnown( $title, 
$this->getLanguage()->lcfirst( $value ) );
+                                       $title = $linkRenderer->makeKnownLink( 
$title, $this->getLanguage()->lcfirst( $value ) );
                                } else {
-                                       $title = Linker::link(
-                                               $title,
-                                               $this->getLanguage()->lcfirst( 
$value ),
-                                               [],
-                                               [],
-                                               [ 'broken' ]
-                                       );
+                                       $title = $linkRenderer->makeBrokenLink( 
$title, $this->getLanguage()->lcfirst( $value ) );
                                }
                                if ( $this->mCurrentRow->am_talk_exists ) {
-                                       $talk = Linker::linkKnown( $talk, 
$this->talk );
+                                       $talk = $linkRenderer::makeKnownLink( 
$talk, $this->talk );
                                } else {
-                                       $talk = Linker::link(
-                                               $talk,
-                                               $this->talk,
-                                               [],
-                                               [],
-                                               [ 'broken' ]
-                                       );
+                                       $talk = $linkRenderer::makeBrokenLink( 
$talk, $this->talk );
                                }
 
                                return $title . ' ' .
diff --git a/includes/specials/pagers/BlockListPager.php 
b/includes/specials/pagers/BlockListPager.php
index d822976..642e280 100644
--- a/includes/specials/pagers/BlockListPager.php
+++ b/includes/specials/pagers/BlockListPager.php
@@ -19,6 +19,8 @@
  * @ingroup Pager
  */
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * @ingroup Pager
  */
@@ -83,6 +85,8 @@
 
                $formatted = '';
 
+               $linkRenderer = 
MediaWikiServices::getInstance()->getLinkRenderer();
+
                switch ( $name ) {
                        case 'ipb_timestamp':
                                $formatted = htmlspecialchars( 
$language->userTimeAndDate( $value, $this->getUser() ) );
@@ -117,18 +121,18 @@
                                ) );
                                if ( $this->getUser()->isAllowed( 'block' ) ) {
                                        if ( $row->ipb_auto ) {
-                                               $links[] = Linker::linkKnown(
+                                               $links[] = 
$linkRenderer->makeKnownLink(
                                                        
SpecialPage::getTitleFor( 'Unblock' ),
                                                        $msg['unblocklink'],
                                                        [],
                                                        [ 'wpTarget' => 
"#{$row->ipb_id}" ]
                                                );
                                        } else {
-                                               $links[] = Linker::linkKnown(
+                                               $links[] = 
$linkRenderer->makeKnownLink(
                                                        
SpecialPage::getTitleFor( 'Unblock', $row->ipb_address ),
                                                        $msg['unblocklink']
                                                );
-                                               $links[] = Linker::linkKnown(
+                                               $links[] = 
$linkRenderer->makeKnownLink(
                                                        
SpecialPage::getTitleFor( 'Block', $row->ipb_address ),
                                                        $msg['change-blocklink']
                                                );
diff --git a/includes/specials/pagers/ContribsPager.php 
b/includes/specials/pagers/ContribsPager.php
index a145e45..882516b 100644
--- a/includes/specials/pagers/ContribsPager.php
+++ b/includes/specials/pagers/ContribsPager.php
@@ -19,6 +19,8 @@
  * @ingroup Pager
  */
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * Pager for Special:Contributions
  * @ingroup Pager
@@ -346,6 +348,7 @@
 
                $ret = '';
                $classes = [];
+               $linkRenderer = 
MediaWikiServices::getInstance()->getLinkRenderer();
 
                /*
                 * There may be more than just revision rows. To make sure that 
we'll only be processing
@@ -367,9 +370,9 @@
                        $classes = [];
 
                        $page = Title::newFromRow( $row );
-                       $link = Linker::link(
+                       $link = $linkRenderer->makeLink(
                                $page,
-                               htmlspecialchars( $page->getPrefixedText() ),
+                               $page->getPrefixedText(),
                                [ 'class' => 'mw-contributions-title' ],
                                $page->isRedirect() ? [ 'redirect' => 'no' ] : 
[]
                        );
@@ -389,7 +392,7 @@
                        }
                        # Is there a visible previous revision?
                        if ( $rev->userCan( Revision::DELETED_TEXT, $user ) && 
$rev->getParentId() !== 0 ) {
-                               $difftext = Linker::linkKnown(
+                               $difftext = $linkRenderer->makeKnownLink(
                                        $page,
                                        $this->messages['diff'],
                                        [],
@@ -401,7 +404,7 @@
                        } else {
                                $difftext = $this->messages['diff'];
                        }
-                       $histlink = Linker::linkKnown(
+                       $histlink = $linkRenderer->makeKnownLink(
                                $page,
                                $this->messages['hist'],
                                [],
@@ -434,9 +437,9 @@
                        $comment = $lang->getDirMark() . Linker::revComment( 
$rev, false, true );
                        $date = $lang->userTimeAndDate( $row->rev_timestamp, 
$user );
                        if ( $rev->userCan( Revision::DELETED_TEXT, $user ) ) {
-                               $d = Linker::linkKnown(
+                               $d = $linkRenderer->makeKnownLink(
                                        $page,
-                                       htmlspecialchars( $date ),
+                                       $date,
                                        [ 'class' => 'mw-changeslist-date' ],
                                        [ 'oldid' => intval( $row->rev_id ) ]
                                );
diff --git a/includes/specials/pagers/DeletedContribsPager.php 
b/includes/specials/pagers/DeletedContribsPager.php
index 1acbba1..ba4768e 100644
--- a/includes/specials/pagers/DeletedContribsPager.php
+++ b/includes/specials/pagers/DeletedContribsPager.php
@@ -19,6 +19,8 @@
  * @ingroup Pager
  */
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * @ingroup Pager
  */
@@ -253,8 +255,10 @@
 
                $undelete = SpecialPage::getTitleFor( 'Undelete' );
 
+               $linkRenderer = 
MediaWikiServices::getInstance()->getLinkRenderer();
+
                $logs = SpecialPage::getTitleFor( 'Log' );
-               $dellog = Linker::linkKnown(
+               $dellog = $linkRenderer->makeKnownLink(
                        $logs,
                        $this->messages['deletionlog'],
                        [],
@@ -264,7 +268,7 @@
                        ]
                );
 
-               $reviewlink = Linker::linkKnown(
+               $reviewlink = $linkRenderer->makeKnownLink(
                        SpecialPage::getTitleFor( 'Undelete', 
$page->getPrefixedDBkey() ),
                        $this->messages['undeleteviewlink']
                );
@@ -272,7 +276,7 @@
                $user = $this->getUser();
 
                if ( $user->isAllowed( 'deletedtext' ) ) {
-                       $last = Linker::linkKnown(
+                       $last = $linkRenderer->makeKnownLink(
                                $undelete,
                                $this->messages['diff'],
                                [],
@@ -288,12 +292,11 @@
 
                $comment = Linker::revComment( $rev );
                $date = $this->getLanguage()->userTimeAndDate( 
$rev->getTimestamp(), $user );
-               $date = htmlspecialchars( $date );
 
                if ( !$user->isAllowed( 'undelete' ) || !$rev->userCan( 
Revision::DELETED_TEXT, $user ) ) {
-                       $link = $date; // unusable link
+                       $link = htmlspecialchars($date); // unusable link
                } else {
-                       $link = Linker::linkKnown(
+                       $link = $linkRenderer->makeKnownLink(
                                $undelete,
                                $date,
                                [ 'class' => 'mw-changeslist-date' ],
@@ -308,7 +311,7 @@
                        $link = '<span class="history-deleted">' . $link . 
'</span>';
                }
 
-               $pagelink = Linker::link(
+               $pagelink = $linkRenderer->makeLink(
                        $page,
                        null,
                        [ 'class' => 'mw-changeslist-title' ]
diff --git a/includes/specials/pagers/ImageListPager.php 
b/includes/specials/pagers/ImageListPager.php
index 7fc4a95..f1a702a 100644
--- a/includes/specials/pagers/ImageListPager.php
+++ b/includes/specials/pagers/ImageListPager.php
@@ -19,6 +19,8 @@
  * @ingroup Pager
  */
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * @ingroup Pager
  */
@@ -422,6 +424,8 @@
         * @throws MWException
         */
        function formatValue( $field, $value ) {
+               $linkRenderer = 
MediaWikiServices::getInstance()->getLinkRenderer();
+
                switch ( $field ) {
                        case 'thumb':
                                $opt = [ 'time' => wfTimestamp( TS_MW, 
$this->mCurrentRow->img_timestamp ) ];
@@ -449,9 +453,9 @@
                                // Weird files can maybe exist? Bug 22227
                                $filePage = Title::makeTitleSafe( NS_FILE, 
$value );
                                if ( $filePage ) {
-                                       $link = Linker::linkKnown(
+                                       $link = $linkRenderer->makeKnownLink(
                                                $filePage,
-                                               htmlspecialchars( 
$filePage->getText() )
+                                               $filePage->getText()
                                        );
                                        $download = Xml::element( 'a',
                                                [ 'href' => wfLocalFile( 
$filePage )->getUrl() ],
@@ -462,9 +466,9 @@
                                        // Add delete links if allowed
                                        // From 
https://github.com/Wikia/app/pull/3859
                                        if ( $filePage->userCan( 'delete', 
$this->getUser() ) ) {
-                                               $deleteMsg = $this->msg( 
'listfiles-delete' )->escaped();
+                                               $deleteMsg = $this->msg( 
'listfiles-delete' )->text();
 
-                                               $delete = Linker::linkKnown(
+                                               $delete = 
$linkRenderer->makeKnownLink(
                                                        $filePage, $deleteMsg, 
[], [ 'action' => 'delete' ]
                                                );
                                                $delete = $this->msg( 
'parentheses' )->rawParams( $delete )->escaped();
@@ -479,9 +483,9 @@
                        case 'img_user_text':
                                if ( $this->mCurrentRow->img_user ) {
                                        $name = User::whoIs( 
$this->mCurrentRow->img_user );
-                                       $link = Linker::link(
+                                       $link = $linkRenderer->makeLink(
                                                Title::makeTitle( NS_USER, 
$name ),
-                                               htmlspecialchars( $name )
+                                               $name
                                        );
                                } else {
                                        $link = htmlspecialchars( $value );

-- 
To view, visit https://gerrit.wikimedia.org/r/325339
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I937bdc99d1342e73f20b8437a9b55dffb04161c5
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Phantom42 <nikita...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to