[MediaWiki-commits] [Gerrit] mediawiki/core[master]: Replace Linker::link() with LinkRenderer in includes directory
jenkins-bot has submitted this change and it was merged. Change subject: Replace Linker::link() with LinkRenderer in includes directory .. Replace Linker::link() with LinkRenderer in includes directory * CategoryViewer * OutputPage * Preferences Bug: T149346 Change-Id: I9f9bcd9b461884817e8ceefbc6757c436221e331 --- M includes/CategoryViewer.php M includes/OutputPage.php M includes/Preferences.php 3 files changed, 30 insertions(+), 14 deletions(-) Approvals: Legoktm: Looks good to me, approved Florianschmidtwelzow: Looks good to me, but someone else must approve jenkins-bot: Verified diff --git a/includes/CategoryViewer.php b/includes/CategoryViewer.php index b95f274..4c4b8bb 100644 --- a/includes/CategoryViewer.php +++ b/includes/CategoryViewer.php @@ -197,7 +197,11 @@ $link = null; Hooks::run( 'CategoryViewer::generateLink', [ $type, $title, $html, &$link ] ); if ( $link === null ) { - $link = Linker::link( $title, $html ); + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); + if ( $html !== null ) { + $html = new HtmlArmor( $html ); + } + $link = $linkRenderer->makeLink( $title, $html ); } if ( $isRedirect ) { $link = '' . $link . ''; diff --git a/includes/OutputPage.php b/includes/OutputPage.php index 43d71ab..6070114 100644 --- a/includes/OutputPage.php +++ b/includes/OutputPage.php @@ -21,6 +21,7 @@ */ use MediaWiki\Logger\LoggerFactory; +use MediaWiki\MediaWikiServices; use MediaWiki\Session\SessionManager; use WrappedString\WrappedString; use WrappedString\WrappedStringList; @@ -1010,8 +1011,9 @@ if ( $title->isRedirect() ) { $query['redirect'] = 'no'; } + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); return wfMessage( 'backlinksubtitle' ) - ->rawParams( Linker::link( $title, null, [], $query ) ); + ->rawParams( $linkRenderer->makeLink( $title, null, [], $query ) ); } /** @@ -1269,6 +1271,7 @@ 'OutputPageMakeCategoryLinks', [ &$this, $categories, &$this->mCategoryLinks ] ) ) { + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); foreach ( $categories as $category => $type ) { // array keys will cast numeric category names to ints, so cast back to string $category = (string)$category; @@ -1283,7 +1286,7 @@ } $text = $wgContLang->convertHtml( $title->getText() ); $this->mCategories[$type][] = $title->getText(); - $this->mCategoryLinks[$type][] = Linker::link( $title, $text ); + $this->mCategoryLinks[$type][] = $linkRenderer->makeLink( $title, new HtmlArmor( $text ) ); } } } @@ -2653,8 +2656,10 @@ * @param array $options Options array to pass to Linker */ public function addReturnTo( $title, array $query = [], $text = null, $options = [] ) { + $linkRenderer = MediaWikiServices::getInstance() + ->getLinkRendererFactory()->createFromLegacyOptions( $options ); $link = $this->msg( 'returnto' )->rawParams( - Linker::link( $title, $text, [], $query, $options ) )->escaped(); + $linkRenderer->makeLink( $title, $text, [], $query ) )->escaped(); $this->addHTML( "{$link}\n" ); } diff --git a/includes/Preferences.php b/includes/Preferences.php index d86b19a..d40e0c1 100644 --- a/includes/Preferences.php +++ b/includes/Preferences.php @@ -21,6 +21,7 @@ */ use MediaWiki\Auth\AuthManager; use MediaWiki\Auth\PasswordAuthenticationRequest; +use MediaWiki\MediaWikiServices; /** * We're now using the HTMLForm object with some customisation to generate the @@ -253,7 +254,9 @@ 'section' => 'personal/info', ]; - $editCount = Linker::link( SpecialPage::getTitleFor( "Contributions", $userName ), + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); + + $editCount = $linkRenderer->makeLink( SpecialPage::getTitleFor( "Contributions", $userName ), $lang->formatNum( $user->getEditCount() ) ); $defaultPreferences['editcount'] = [ @@ -297,8 +300,8 @@ if ( $canEditPrivateInfo && $authManager->allowsAuth
[MediaWiki-commits] [Gerrit] mediawiki/core[master]: Replace Linker::link() with LinkRenderer in includes directory
Georggi199 has uploaded a new change for review. https://gerrit.wikimedia.org/r/324600 Change subject: Replace Linker::link() with LinkRenderer in includes directory .. Replace Linker::link() with LinkRenderer in includes directory * CategoryViewer * DummyLinker * Linker * OutputPage * Preferences Bug: T149346 Change-Id: I9f9bcd9b461884817e8ceefbc6757c436221e331 --- M includes/CategoryViewer.php M includes/DummyLinker.php M includes/Linker.php M includes/OutputPage.php M includes/Preferences.php 5 files changed, 60 insertions(+), 38 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core refs/changes/00/324600/1 diff --git a/includes/CategoryViewer.php b/includes/CategoryViewer.php index b95f274..7dac111 100644 --- a/includes/CategoryViewer.php +++ b/includes/CategoryViewer.php @@ -197,7 +197,8 @@ $link = null; Hooks::run( 'CategoryViewer::generateLink', [ $type, $title, $html, &$link ] ); if ( $link === null ) { - $link = Linker::link( $title, $html ); + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); + $link = $linkRenderer->makeLink( $title, new HtmlArmor( $html ) ); } if ( $isRedirect ) { $link = '' . $link . ''; diff --git a/includes/DummyLinker.php b/includes/DummyLinker.php index fc94a63..a95bfad 100644 --- a/includes/DummyLinker.php +++ b/includes/DummyLinker.php @@ -62,12 +62,12 @@ $query = [], $options = [] ) { - return Linker::link( + $linkRenderer = MediaWiki\MediaWikiServices::getInstance()->getLinkRenderer(); + return $linkRenderer->makeLink( $target, - $html, + new HtmlArmor( $html ), $customAttribs, - $query, - $options + $query ); } diff --git a/includes/Linker.php b/includes/Linker.php index d3d1f38..97b3e55 100644 --- a/includes/Linker.php +++ b/includes/Linker.php @@ -256,7 +256,8 @@ $target, $html = null, $customAttribs = [], $query = [], $options = [ 'known' ] ) { - return self::link( $target, $html, $customAttribs, $query, $options ); + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); + return $linkRenderer->makeKnownLink( $target, new HtmlArmor( $html ), $customAttribs, $query ); } /** @@ -425,7 +426,8 @@ if ( $file && !$file->allowInlineDisplay() ) { wfDebug( __METHOD__ . ': ' . $title->getPrefixedDBkey() . " does not allow inline display\n" ); - return self::link( $title ); + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); + return $linkRenderer->makeLink( $title ); } // Clean up parameters @@ -781,6 +783,7 @@ public static function makeBrokenImageLinkObj( $title, $label = '', $query = '', $unused1 = '', $unused2 = '', $time = false ) { + $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer(); if ( !$title instanceof Title ) { wfWarn( __METHOD__ . ': Requires $title to be a Title object.' ); return "" . htmlspecialchars( $label ); @@ -801,12 +804,12 @@ if ( $redir ) { // We already know it's a redirect, so mark it // accordingly - return self::link( + return $linkRenderer->makePreloadedLink( $title, - $encLabel, + $label, + '', [ 'class' => 'mw-redirect' ], - wfCgiToArray( $query ), - [ 'known', 'noclasses' ] + wfCgiToArray( $query ) ); } @@ -817,7 +820,7 @@ $encLabel . ''; } - return self::link( $title, $encLabel, [], wfCgiToArray( $query ), [ 'known', 'noclasses' ] ); + return $linkRenderer->makePreloadedLink( $title, $label, '', [], wfCgiToArray( $query )); } /** @@ -993,10 +996,11 @@ $page = Title::makeTitle( NS_USER, $userName ); } + $linkRenderer = MediaWikiServices::