jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/340452 )
Change subject: Get rid of global state
......................................................................
Get rid of global state
Yeah, Article class is still scary, however at least it passes
proper context around.
Bug: T159299
Change-Id: I0204a9948f5124d7acd2c417db4a1d6b84dce835
---
M PageTriage.hooks.php
1 file changed, 19 insertions(+), 15 deletions(-)
Approvals:
EBernhardson: Looks good to me, approved
jenkins-bot: Verified
Jforrester: Looks good to me, but someone else must approve
diff --git a/PageTriage.hooks.php b/PageTriage.hooks.php
index 42cab6d..0050cfe 100644
--- a/PageTriage.hooks.php
+++ b/PageTriage.hooks.php
@@ -32,9 +32,8 @@
return true;
}
- global $wgUser;
// New record to pagetriage queue, compile metadata
- if ( self::addToPageTriageQueue( $pageId, $newTitle, $wgUser )
) {
+ if ( self::addToPageTriageQueue( $pageId, $newTitle,
$movePage->getUser() ) ) {
$acp = ArticleCompileProcessor::newFromPageId( [
$pageId ] );
if ( $acp ) {
// safe to use slave db for data compilation
for the
@@ -371,16 +370,21 @@
* @return bool
*/
public static function onArticleViewFooter( $article,
$patrolFooterShown ) {
- global $wgUser, $wgPageTriageMarkPatrolledLinkExpiry, $wgOut,
- $wgPageTriageEnableCurationToolbar, $wgRequest,
$wgPageTriageNamespaces;
+ global $wgPageTriageMarkPatrolledLinkExpiry,
+ $wgPageTriageEnableCurationToolbar,
$wgPageTriageNamespaces;
+
+ $context = $article->getContext();
+ $user = $context->getUser();
+ $outputPage = $context->getOutput();
+ $request = $context->getRequest();
// Overwrite the noindex rule defined in Article::view(), this
also affects main namespace
if ( self::shouldShowNoIndex( $article ) ) {
- $wgOut->setRobotPolicy( 'noindex,nofollow' );
+ $outputPage->setRobotPolicy( 'noindex,nofollow' );
}
// Only logged in users can review
- if ( !$wgUser->isLoggedIn() ) {
+ if ( !$user->isLoggedIn() ) {
return true;
}
@@ -395,13 +399,13 @@
}
// Don't do anything if it's coming from Special:NewPages
- if ( $wgRequest->getVal( 'patrolpage' ) ) {
+ if ( $request->getVal( 'patrolpage' ) ) {
return true;
}
// If the user hasn't visited Special:NewPagesFeed lately,
don't do anything
$lastUseExpired = false;
- $lastUse = $wgUser->getOption( 'pagetriage-lastuse' );
+ $lastUse = $user->getOption( 'pagetriage-lastuse' );
if ( $lastUse ) {
$lastUse = wfTimestamp( TS_UNIX, $lastUse );
$now = wfTimestamp( TS_UNIX, wfTimestampNow() );
@@ -416,19 +420,19 @@
// Also, users without the autopatrol right can't review their
own pages
$needsReview = PageTriageUtil::doesPageNeedTriage( $article );
if ( !is_null( $needsReview )
- && !( $wgUser->getId() ==
$article->getOldestRevision()->getUser()
- && !$wgUser->isAllowed( 'autopatrol' )
+ && !( $user->getId() ==
$article->getOldestRevision()->getUser()
+ && !$user->isAllowed( 'autopatrol' )
)
) {
- if ( $wgPageTriageEnableCurationToolbar ||
$wgRequest->getVal( 'curationtoolbar' ) === 'true' ) {
+ if ( $wgPageTriageEnableCurationToolbar ||
$request->getVal( 'curationtoolbar' ) === 'true' ) {
// Load the JavaScript for the curation toolbar
- $wgOut->addModules(
'ext.pageTriage.toolbarStartup' );
+ $outputPage->addModules(
'ext.pageTriage.toolbarStartup' );
// Set the config flags in JavaScript
$globalVars = [
'wgPageTriagelastUseExpired' =>
$lastUseExpired,
'wgPageTriagePagePrefixedText' =>
$article->getTitle()->getPrefixedText()
];
- $wgOut->addJsConfigVars( $globalVars );
+ $outputPage->addJsConfigVars( $globalVars );
} else {
if ( $needsReview ) {
// show 'Mark as reviewed' link
@@ -442,9 +446,9 @@
// show 'Reviewed' text
$msg = wfMessage( 'pagetriage-reviewed'
)->escaped();
}
- $wgOut->addModules( [ 'ext.pageTriage.article'
] );
+ $outputPage->addModules( [
'ext.pageTriage.article' ] );
$html = Html::rawElement( 'div', [ 'class' =>
'mw-pagetriage-markpatrolled' ], $msg );
- $wgOut->addHTML( $html );
+ $outputPage->addHTML( $html );
}
}
--
To view, visit https://gerrit.wikimedia.org/r/340452
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I0204a9948f5124d7acd2c417db4a1d6b84dce835
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/PageTriage
Gerrit-Branch: master
Gerrit-Owner: MaxSem <[email protected]>
Gerrit-Reviewer: Catrope <[email protected]>
Gerrit-Reviewer: EBernhardson <[email protected]>
Gerrit-Reviewer: Jforrester <[email protected]>
Gerrit-Reviewer: Kaldari <[email protected]>
Gerrit-Reviewer: Mattflaschen <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits