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