Matěj Suchánek has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/339818 )

Change subject: Replace Linker::link() with LinkRenderer
......................................................................

Replace Linker::link() with LinkRenderer

This updates the hook handler in order to not rely on global state.

This also raises MediaWiki version requirement to 1.28.0 and bumps the
version number to 1.3.0.

Bug: T149346
Change-Id: I9b1d877046c4cb6548bd8f40306ff7905b766f14
---
M Nuke.hooks.php
M Nuke_body.php
M extension.json
3 files changed, 17 insertions(+), 18 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Nuke 
refs/changes/18/339818/2

diff --git a/Nuke.hooks.php b/Nuke.hooks.php
index 3c36475..ed29ebe 100644
--- a/Nuke.hooks.php
+++ b/Nuke.hooks.php
@@ -5,24 +5,19 @@
        /**
         * Shows link to Special:Nuke on Special:Contributions/username if 
applicable
         *
-        * @param $userId Integer
-        * @param $userPageTitle Title
-        * @param $toolLinks Array
-        *
-        * @return true
+        * @param int $userId
+        * @param Title $userPageTitle
+        * @param string[] $toolLinks
+        * @param SpecialPage $sp
         */
-       public static function nukeContributionsLinks( $userId, $userPageTitle, 
&$toolLinks ) {
-               global $wgUser;
-
-               if ( $wgUser->isAllowed( 'nuke' ) ) {
-                       $toolLinks[] = Linker::link(
+       public static function nukeContributionsLinks( $userId, $userPageTitle, 
&$toolLinks, SpecialPage $sp ) {
+               if ( $sp->getUser()->isAllowed( 'nuke' ) ) {
+                       $toolLinks['nuke'] = 
$sp->getLinkRenderer()->makeKnownLink(
                                SpecialPage::getTitleFor( 'Nuke' ),
-                               wfMessage( 'nuke-linkoncontribs' )->escaped(),
-                               [ 'title' => wfMessage( 
'nuke-linkoncontribs-text' )->text() ],
+                               $sp->msg( 'nuke-linkoncontribs' )->text(),
+                               [ 'title' => $sp->msg( 
'nuke-linkoncontribs-text' )->text() ],
                                [ 'target' => $userPageTitle->getText() ]
                        );
                }
-
-               return true;
        }
 }
diff --git a/Nuke_body.php b/Nuke_body.php
index 6633a69..1887be9 100644
--- a/Nuke_body.php
+++ b/Nuke_body.php
@@ -201,6 +201,7 @@
                $wordSeparator = $this->msg( 'word-separator' )->escaped();
                $commaSeparator = $this->msg( 'comma-separator' )->escaped();
 
+               $linkRenderer = $this->getLinkRenderer();
                foreach ( $pages as $info ) {
                        /**
                         * @var $title Title
@@ -215,9 +216,9 @@
                        $userNameText = $userName ?
                                $this->msg( 'nuke-editby', $userName )->parse() 
. $commaSeparator :
                                '';
-                       $changesLink = Linker::linkKnown(
+                       $changesLink = $linkRenderer->makeKnownLink(
                                $title,
-                               $this->msg( 'nuke-viewchanges' )->escaped(),
+                               $this->msg( 'nuke-viewchanges' )->text(),
                                [],
                                [ 'action' => 'history' ]
                        );
@@ -228,7 +229,7 @@
                                        [ 'value' => $title->getPrefixedDBkey() 
]
                                ) . ' ' .
                                ( $thumb ? $thumb->toHtml( [ 'desc-link' => 
true ] ) : '' ) .
-                               Linker::linkKnown( $title ) . $wordSeparator .
+                               $linkRenderer->makeKnownLink( $title ) . 
$wordSeparator .
                                $this->msg( 'parentheses' )->rawParams( 
$userNameText . $changesLink )->escaped() .
                                "</li>\n" );
                }
diff --git a/extension.json b/extension.json
index c897547..39ac575 100644
--- a/extension.json
+++ b/extension.json
@@ -1,6 +1,6 @@
 {
        "name": "Nuke",
-       "version": "1.2.0",
+       "version": "1.3.0",
        "author": [
                "Brion Vibber",
                "Jeroen De Dauw"
@@ -8,6 +8,9 @@
        "url": "https://www.mediawiki.org/wiki/Extension:Nuke";,
        "descriptionmsg": "nuke-desc",
        "license-name": "GPL-2.0+",
+       "requires": {
+               "MediaWiki": ">= 1.28.0"
+       },
        "type": "specialpage",
        "ExtensionMessagesFiles": {
                "NukeAlias": "Nuke.alias.php"

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9b1d877046c4cb6548bd8f40306ff7905b766f14
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/Nuke
Gerrit-Branch: master
Gerrit-Owner: Matěj Suchánek <matejsuchane...@gmail.com>
Gerrit-Reviewer: jenkins-bot <>

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

Reply via email to