Linker: Accept LinkTargets in makeCommentLink()

Change-Id: I47b421b38ec60aaf8b4b9f762084f42b44ef8026
This commit is contained in:
Kunal Mehta 2017-09-10 15:20:07 -07:00
parent 77b34ccdba
commit 1fd75c78db

View file

@ -1319,7 +1319,7 @@ class Linker {
* *
* @note This is only public for technical reasons. It's not intended for use outside Linker. * @note This is only public for technical reasons. It's not intended for use outside Linker.
* *
* @param Title $title * @param LinkTarget $linkTarget
* @param string $text * @param string $text
* @param string|null $wikiId Id of the wiki to link to (if not the local wiki), * @param string|null $wikiId Id of the wiki to link to (if not the local wiki),
* as used by WikiMap. * as used by WikiMap.
@ -1328,23 +1328,23 @@ class Linker {
* @return string HTML link * @return string HTML link
*/ */
public static function makeCommentLink( public static function makeCommentLink(
Title $title, $text, $wikiId = null, $options = [] LinkTarget $linkTarget, $text, $wikiId = null, $options = []
) { ) {
if ( $wikiId !== null && !$title->isExternal() ) { if ( $wikiId !== null && !$linkTarget->isExternal() ) {
$link = self::makeExternalLink( $link = self::makeExternalLink(
WikiMap::getForeignURL( WikiMap::getForeignURL(
$wikiId, $wikiId,
$title->getNamespace() === 0 $linkTarget->getNamespace() === 0
? $title->getDBkey() ? $linkTarget->getDBkey()
: MWNamespace::getCanonicalName( $title->getNamespace() ) . ':' : MWNamespace::getCanonicalName( $linkTarget->getNamespace() ) . ':'
. $title->getDBkey(), . $linkTarget->getDBkey(),
$title->getFragment() $linkTarget->getFragment()
), ),
$text, $text,
/* escape = */ false // Already escaped /* escape = */ false // Already escaped
); );
} else { } else {
$link = self::link( $title, $text, [], [], $options ); $link = self::link( $linkTarget, $text, [], [], $options );
} }
return $link; return $link;