Convert first batch of special pages to Authority
Change-Id: I4c6877ef2b1f32610190c6de0f1bcaaa3c835fb0
This commit is contained in:
parent
4ca69110af
commit
5d39397de3
18 changed files with 38 additions and 155 deletions
|
|
@ -1103,10 +1103,7 @@ abstract class LoginSignupSpecialPage extends AuthManagerSpecialPage {
|
|||
private function showCreateAccountLink() {
|
||||
if ( $this->isSignup() ) {
|
||||
return true;
|
||||
} elseif ( MediaWikiServices::getInstance()
|
||||
->getPermissionManager()
|
||||
->userHasRight( $this->getUser(), 'createaccount' )
|
||||
) {
|
||||
} elseif ( $this->getContext()->getAuthority()->isAllowed( 'createaccount' ) ) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -67,7 +67,6 @@ class SpecialPageFactory {
|
|||
'BrokenRedirects' => [
|
||||
'class' => \SpecialBrokenRedirects::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'ContentHandlerFactory',
|
||||
'DBLoadBalancer',
|
||||
'LinkBatchFactory',
|
||||
|
|
@ -85,7 +84,6 @@ class SpecialPageFactory {
|
|||
'DoubleRedirects' => [
|
||||
'class' => \SpecialDoubleRedirects::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'ContentHandlerFactory',
|
||||
'LinkBatchFactory',
|
||||
'DBLoadBalancer',
|
||||
|
|
@ -354,7 +352,6 @@ class SpecialPageFactory {
|
|||
'Block' => [
|
||||
'class' => \SpecialBlock::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'BlockUtils',
|
||||
'BlockPermissionCheckerFactory',
|
||||
'BlockUserFactory',
|
||||
|
|
@ -522,7 +519,6 @@ class SpecialPageFactory {
|
|||
'services' => [
|
||||
'WatchedItemStore',
|
||||
'WatchlistNotificationManager',
|
||||
'PermissionManager',
|
||||
'DBLoadBalancer',
|
||||
'UserOptionsLookup',
|
||||
]
|
||||
|
|
@ -564,9 +560,6 @@ class SpecialPageFactory {
|
|||
],
|
||||
'Tags' => [
|
||||
'class' => \SpecialTags::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
]
|
||||
],
|
||||
|
||||
// Media reports and uploads
|
||||
|
|
@ -638,9 +631,6 @@ class SpecialPageFactory {
|
|||
// Data and tools
|
||||
'ApiSandbox' => [
|
||||
'class' => \SpecialApiSandbox::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
],
|
||||
],
|
||||
'Statistics' => [
|
||||
'class' => \SpecialStatistics::class,
|
||||
|
|
@ -775,7 +765,6 @@ class SpecialPageFactory {
|
|||
'Export' => [
|
||||
'class' => \SpecialExport::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'DBLoadBalancer',
|
||||
]
|
||||
],
|
||||
|
|
@ -806,7 +795,6 @@ class SpecialPageFactory {
|
|||
'services' => [
|
||||
'DBLoadBalancer',
|
||||
'LinkBatchFactory',
|
||||
'PermissionManager',
|
||||
'ContentHandlerFactory',
|
||||
'SearchEngineFactory',
|
||||
'NamespaceInfo',
|
||||
|
|
@ -824,7 +812,6 @@ class SpecialPageFactory {
|
|||
'ExpandTemplates' => [
|
||||
'class' => \SpecialExpandTemplates::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'Parser',
|
||||
'UserOptionsLookup',
|
||||
],
|
||||
|
|
@ -931,7 +918,6 @@ class SpecialPageFactory {
|
|||
'Redirect' => [
|
||||
'class' => \SpecialRedirect::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'RepoGroup'
|
||||
]
|
||||
],
|
||||
|
|
@ -1036,7 +1022,6 @@ class SpecialPageFactory {
|
|||
'services' => [
|
||||
'SearchEngineConfig',
|
||||
'SearchEngineFactory',
|
||||
'PermissionManager',
|
||||
'NamespaceInfo',
|
||||
'ContentHandlerFactory',
|
||||
'InterwikiLookup',
|
||||
|
|
@ -1067,7 +1052,6 @@ class SpecialPageFactory {
|
|||
$this->list['ChangeEmail'] = [
|
||||
'class' => \SpecialChangeEmail::class,
|
||||
'services' => [
|
||||
'PermissionManager',
|
||||
'AuthManager',
|
||||
],
|
||||
];
|
||||
|
|
|
|||
|
|
@ -21,24 +21,14 @@
|
|||
* @ingroup SpecialPage
|
||||
*/
|
||||
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
|
||||
/**
|
||||
* @ingroup SpecialPage
|
||||
* @since 1.27
|
||||
*/
|
||||
class SpecialApiSandbox extends SpecialPage {
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permManager;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permManager
|
||||
*/
|
||||
public function __construct( PermissionManager $permManager ) {
|
||||
public function __construct() {
|
||||
parent::__construct( 'ApiSandbox' );
|
||||
|
||||
$this->permManager = $permManager;
|
||||
}
|
||||
|
||||
public function execute( $par ) {
|
||||
|
|
@ -48,7 +38,7 @@ class SpecialApiSandbox extends SpecialPage {
|
|||
|
||||
$out->addJsConfigVars(
|
||||
'apihighlimits',
|
||||
$this->permManager->userHasRight( $this->getUser(), 'apihighlimits' )
|
||||
$this->getContext()->getAuthority()->isAllowed( 'apihighlimits' )
|
||||
);
|
||||
$out->addModuleStyles( [
|
||||
'mediawiki.special',
|
||||
|
|
|
|||
|
|
@ -30,7 +30,6 @@ use MediaWiki\Block\DatabaseBlock;
|
|||
use MediaWiki\Block\Restriction\NamespaceRestriction;
|
||||
use MediaWiki\Block\Restriction\PageRestriction;
|
||||
use MediaWiki\MediaWikiServices;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use MediaWiki\User\UserIdentity;
|
||||
use MediaWiki\User\UserNamePrefixSearch;
|
||||
use MediaWiki\User\UserNameUtils;
|
||||
|
|
@ -43,10 +42,6 @@ use Wikimedia\IPUtils;
|
|||
* @ingroup SpecialPage
|
||||
*/
|
||||
class SpecialBlock extends FormSpecialPage {
|
||||
/**
|
||||
* @var PermissionManager
|
||||
*/
|
||||
private $permissionManager;
|
||||
|
||||
/** @var BlockUtils */
|
||||
private $blockUtils;
|
||||
|
|
@ -84,7 +79,6 @@ class SpecialBlock extends FormSpecialPage {
|
|||
protected $preErrors = [];
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param BlockUtils $blockUtils
|
||||
* @param BlockPermissionCheckerFactory $blockPermissionCheckerFactory
|
||||
* @param BlockUserFactory $blockUserFactory
|
||||
|
|
@ -92,7 +86,6 @@ class SpecialBlock extends FormSpecialPage {
|
|||
* @param UserNamePrefixSearch $userNamePrefixSearch
|
||||
*/
|
||||
public function __construct(
|
||||
PermissionManager $permissionManager,
|
||||
BlockUtils $blockUtils,
|
||||
BlockPermissionCheckerFactory $blockPermissionCheckerFactory,
|
||||
BlockUserFactory $blockUserFactory,
|
||||
|
|
@ -101,7 +94,6 @@ class SpecialBlock extends FormSpecialPage {
|
|||
) {
|
||||
parent::__construct( 'Block', 'block' );
|
||||
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->blockUtils = $blockUtils;
|
||||
$this->blockPermissionCheckerFactory = $blockPermissionCheckerFactory;
|
||||
$this->blockUserFactory = $blockUserFactory;
|
||||
|
|
@ -341,7 +333,7 @@ class SpecialBlock extends FormSpecialPage {
|
|||
];
|
||||
|
||||
# Allow some users to hide name from block log, blocklist and listusers
|
||||
if ( $this->permissionManager->userHasRight( $user, 'hideuser' ) ) {
|
||||
if ( $this->getContext()->getAuthority()->isAllowed( 'hideuser' ) ) {
|
||||
$a['HideUser'] = [
|
||||
'type' => 'check',
|
||||
'label-message' => 'ipbhidename',
|
||||
|
|
@ -435,9 +427,7 @@ class SpecialBlock extends FormSpecialPage {
|
|||
|
||||
// If the username was hidden (ipb_deleted == 1), don't show the reason
|
||||
// unless this user also has rights to hideuser: T37839
|
||||
if ( !$block->getHideName() || $this->permissionManager
|
||||
->userHasRight( $this->getUser(), 'hideuser' )
|
||||
) {
|
||||
if ( !$block->getHideName() || $this->getContext()->getAuthority()->isAllowed( 'hideuser' ) ) {
|
||||
$fields['Reason']['default'] = $block->getReasonComment()->text;
|
||||
} else {
|
||||
$fields['Reason']['default'] = '';
|
||||
|
|
@ -603,10 +593,8 @@ class SpecialBlock extends FormSpecialPage {
|
|||
$this->msg( 'ipb-blocklist' )->text()
|
||||
);
|
||||
|
||||
$user = $this->getUser();
|
||||
|
||||
# Link to edit the block dropdown reasons, if applicable
|
||||
if ( $this->permissionManager->userHasRight( $user, 'editinterface' ) ) {
|
||||
if ( $this->getContext()->getAuthority()->isAllowed( 'editinterface' ) ) {
|
||||
$links[] = $linkRenderer->makeKnownLink(
|
||||
$this->msg( 'ipbreason-dropdown' )->inContentLanguage()->getTitle(),
|
||||
$this->msg( 'ipb-edit-dropdown' )->text(),
|
||||
|
|
@ -640,7 +628,7 @@ class SpecialBlock extends FormSpecialPage {
|
|||
$text .= $out;
|
||||
|
||||
# Add suppression block entries if allowed
|
||||
if ( $this->permissionManager->userHasRight( $user, 'suppressionlog' ) ) {
|
||||
if ( $this->getContext()->getAuthority()->isAllowed( 'suppressionlog' ) ) {
|
||||
LogEventsList::showLogExtract(
|
||||
$out,
|
||||
'suppress',
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
use MediaWiki\Cache\LinkBatchFactory;
|
||||
use MediaWiki\Content\IContentHandlerFactory;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use Wikimedia\Rdbms\IDatabase;
|
||||
use Wikimedia\Rdbms\ILoadBalancer;
|
||||
use Wikimedia\Rdbms\IResultWrapper;
|
||||
|
|
@ -36,26 +35,20 @@ use Wikimedia\Rdbms\IResultWrapper;
|
|||
*/
|
||||
class SpecialBrokenRedirects extends QueryPage {
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/** @var IContentHandlerFactory */
|
||||
private $contentHandlerFactory;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param IContentHandlerFactory $contentHandlerFactory
|
||||
* @param ILoadBalancer $loadBalancer
|
||||
* @param LinkBatchFactory $linkBatchFactory
|
||||
*/
|
||||
public function __construct(
|
||||
PermissionManager $permissionManager,
|
||||
IContentHandlerFactory $contentHandlerFactory,
|
||||
ILoadBalancer $loadBalancer,
|
||||
LinkBatchFactory $linkBatchFactory
|
||||
) {
|
||||
parent::__construct( 'BrokenRedirects' );
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->contentHandlerFactory = $contentHandlerFactory;
|
||||
$this->setDBLoadBalancer( $loadBalancer );
|
||||
$this->setLinkBatchFactory( $linkBatchFactory );
|
||||
|
|
@ -155,7 +148,7 @@ class SpecialBrokenRedirects extends QueryPage {
|
|||
// if the page is editable, add an edit link
|
||||
if (
|
||||
// check user permissions
|
||||
$this->permissionManager->userHasRight( $this->getUser(), 'edit' ) &&
|
||||
$this->getContext()->getAuthority()->isAllowed( 'edit' ) &&
|
||||
// check, if the content model is editable through action=edit
|
||||
$this->contentHandlerFactory->getContentHandler( $fromObj->getContentModel() )
|
||||
->supportsDirectEditing()
|
||||
|
|
@ -172,7 +165,7 @@ class SpecialBrokenRedirects extends QueryPage {
|
|||
|
||||
$out = $from . $this->msg( 'word-separator' )->escaped();
|
||||
|
||||
if ( $this->permissionManager->userHasRight( $this->getUser(), 'delete' ) ) {
|
||||
if ( $this->getContext()->getAuthority()->isAllowed( 'delete' ) ) {
|
||||
$links[] = $linkRenderer->makeKnownLink(
|
||||
$fromObj,
|
||||
$this->msg( 'brokenredirects-delete' )->text(),
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
use MediaWiki\Auth\AuthManager;
|
||||
use MediaWiki\Logger\LoggerFactory;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
|
||||
/**
|
||||
* Let users change their email address.
|
||||
|
|
@ -36,17 +35,12 @@ class SpecialChangeEmail extends FormSpecialPage {
|
|||
*/
|
||||
private $status;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permManager;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permManager
|
||||
* @param AuthManager $authManager
|
||||
*/
|
||||
public function __construct( PermissionManager $permManager, AuthManager $authManager ) {
|
||||
public function __construct( AuthManager $authManager ) {
|
||||
parent::__construct( 'ChangeEmail', 'editmyprivateinfo' );
|
||||
|
||||
$this->permManager = $permManager;
|
||||
$this->setAuthManager( $authManager );
|
||||
}
|
||||
|
||||
|
|
@ -85,7 +79,7 @@ class SpecialChangeEmail extends FormSpecialPage {
|
|||
|
||||
// This could also let someone check the current email address, so
|
||||
// require both permissions.
|
||||
if ( !$this->permManager->userHasRight( $this->getUser(), 'viewmyprivateinfo' ) ) {
|
||||
if ( !$this->getContext()->getAuthority()->isAllowed( 'viewmyprivateinfo' ) ) {
|
||||
throw new PermissionsError( 'viewmyprivateinfo' );
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
*/
|
||||
use MediaWiki\Cache\LinkBatchFactory;
|
||||
use MediaWiki\Content\IContentHandlerFactory;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use Wikimedia\Rdbms\IDatabase;
|
||||
use Wikimedia\Rdbms\ILoadBalancer;
|
||||
use Wikimedia\Rdbms\IResultWrapper;
|
||||
|
|
@ -35,9 +34,6 @@ use Wikimedia\Rdbms\IResultWrapper;
|
|||
*/
|
||||
class SpecialDoubleRedirects extends QueryPage {
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/** @var IContentHandlerFactory */
|
||||
private $contentHandlerFactory;
|
||||
|
||||
|
|
@ -48,19 +44,16 @@ class SpecialDoubleRedirects extends QueryPage {
|
|||
private $dbr;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param IContentHandlerFactory $contentHandlerFactory
|
||||
* @param LinkBatchFactory $linkBatchFactory
|
||||
* @param ILoadBalancer $loadBalancer
|
||||
*/
|
||||
public function __construct(
|
||||
PermissionManager $permissionManager,
|
||||
IContentHandlerFactory $contentHandlerFactory,
|
||||
LinkBatchFactory $linkBatchFactory,
|
||||
ILoadBalancer $loadBalancer
|
||||
) {
|
||||
parent::__construct( 'DoubleRedirects' );
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->contentHandlerFactory = $contentHandlerFactory;
|
||||
$this->linkBatchFactory = $linkBatchFactory;
|
||||
$this->setDBLoadBalancer( $loadBalancer );
|
||||
|
|
@ -180,7 +173,7 @@ class SpecialDoubleRedirects extends QueryPage {
|
|||
// if the page is editable, add an edit link
|
||||
if (
|
||||
// check user permissions
|
||||
$this->permissionManager->userHasRight( $this->getUser(), 'edit' ) &&
|
||||
$this->getContext()->getAuthority()->isAllowed( 'edit' ) &&
|
||||
// check, if the content model is editable through action=edit
|
||||
$this->contentHandlerFactory->getContentHandler( $titleA->getContentModel() )
|
||||
->supportsDirectEditing()
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@
|
|||
* @ingroup SpecialPage
|
||||
*/
|
||||
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use MediaWiki\User\UserOptionsLookup;
|
||||
|
||||
/**
|
||||
|
|
@ -47,9 +46,6 @@ class SpecialExpandTemplates extends SpecialPage {
|
|||
/** @var int Maximum size in bytes to include. 50MB allows fixing those huge pages */
|
||||
private const MAX_INCLUDE_SIZE = 50000000;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/** @var Parser */
|
||||
private $parser;
|
||||
|
||||
|
|
@ -57,17 +53,14 @@ class SpecialExpandTemplates extends SpecialPage {
|
|||
private $userOptionsLookup;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param Parser $parser
|
||||
* @param UserOptionsLookup $userOptionsLookup
|
||||
*/
|
||||
public function __construct(
|
||||
PermissionManager $permissionManager,
|
||||
Parser $parser,
|
||||
UserOptionsLookup $userOptionsLookup
|
||||
) {
|
||||
parent::__construct( 'ExpandTemplates' );
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->parser = $parser;
|
||||
$this->userOptionsLookup = $userOptionsLookup;
|
||||
}
|
||||
|
|
@ -291,7 +284,7 @@ class SpecialExpandTemplates extends SpecialPage {
|
|||
// allowed and a valid edit token is not provided (T73111). However, MediaWiki
|
||||
// does not currently provide logged-out users with CSRF protection; in that case,
|
||||
// do not show the preview unless anonymous editing is allowed.
|
||||
if ( $user->isAnon() && !$this->permissionManager->userHasRight( $user, 'edit' ) ) {
|
||||
if ( $user->isAnon() && !$this->getContext()->getAuthority()->isAllowed( 'edit' ) ) {
|
||||
$error = [ 'expand_templates_preview_fail_html_anon' ];
|
||||
} elseif ( !$user->matchEditToken( $request->getVal( 'wpEditToken' ), '', $request ) ) {
|
||||
$error = [ 'expand_templates_preview_fail_html' ];
|
||||
|
|
|
|||
|
|
@ -24,7 +24,6 @@
|
|||
*/
|
||||
|
||||
use MediaWiki\Logger\LoggerFactory;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use Wikimedia\Rdbms\ILoadBalancer;
|
||||
|
||||
/**
|
||||
|
|
@ -35,22 +34,16 @@ use Wikimedia\Rdbms\ILoadBalancer;
|
|||
class SpecialExport extends SpecialPage {
|
||||
protected $curonly, $doExport, $pageLinkDepth, $templates;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permManager;
|
||||
|
||||
/** @var ILoadBalancer */
|
||||
private $loadBalancer;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permManager
|
||||
* @param ILoadBalancer $loadBalancer
|
||||
*/
|
||||
public function __construct(
|
||||
PermissionManager $permManager,
|
||||
ILoadBalancer $loadBalancer
|
||||
) {
|
||||
parent::__construct( 'Export' );
|
||||
$this->permManager = $permManager;
|
||||
$this->loadBalancer = $loadBalancer;
|
||||
}
|
||||
|
||||
|
|
@ -343,7 +336,7 @@ class SpecialExport extends SpecialPage {
|
|||
* @return bool
|
||||
*/
|
||||
protected function userCanOverrideExportDepth() {
|
||||
return $this->permManager->userHasRight( $this->getUser(), 'override-export-depth' );
|
||||
return $this->getContext()->getAuthority()->isAllowed( 'override-export-depth' );
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -412,7 +405,7 @@ class SpecialExport extends SpecialPage {
|
|||
continue;
|
||||
}
|
||||
|
||||
if ( !$this->permManager->userCan( 'read', $this->getUser(), $title ) ) {
|
||||
if ( !$this->getContext()->getAuthority()->authorizeRead( 'read', $title ) ) {
|
||||
// @todo Perhaps output an <error> tag or something.
|
||||
continue;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,8 +21,6 @@
|
|||
* @ingroup SpecialPage
|
||||
*/
|
||||
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
|
||||
/**
|
||||
* A special page that redirects to: the user for a numeric user id,
|
||||
* the file for a given filename, or the page for a given revision id.
|
||||
|
|
@ -50,22 +48,17 @@ class SpecialRedirect extends FormSpecialPage {
|
|||
*/
|
||||
protected $mValue;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permManager;
|
||||
|
||||
/** @var RepoGroup */
|
||||
private $repoGroup;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permManager
|
||||
* @param RepoGroup $repoGroup
|
||||
*/
|
||||
public function __construct( PermissionManager $permManager, RepoGroup $repoGroup ) {
|
||||
public function __construct( RepoGroup $repoGroup ) {
|
||||
parent::__construct( 'Redirect' );
|
||||
$this->mType = null;
|
||||
$this->mValue = null;
|
||||
|
||||
$this->permManager = $permManager;
|
||||
$this->repoGroup = $repoGroup;
|
||||
}
|
||||
|
||||
|
|
@ -96,9 +89,7 @@ class SpecialRedirect extends FormSpecialPage {
|
|||
// Message: redirect-not-exists
|
||||
return Status::newFatal( $this->getMessagePrefix() . '-not-exists' );
|
||||
}
|
||||
if ( $user->isHidden() &&
|
||||
!$this->permManager->userHasRight( $this->getUser(), 'hideuser' )
|
||||
) {
|
||||
if ( $user->isHidden() && !$this->getContext()->getAuthority()->isAllowed( 'hideuser' ) ) {
|
||||
throw new PermissionsError( null, [ 'badaccess-group0' ] );
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,6 @@
|
|||
use MediaWiki\Content\IContentHandlerFactory;
|
||||
use MediaWiki\Interwiki\InterwikiLookup;
|
||||
use MediaWiki\Languages\LanguageConverterFactory;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use MediaWiki\Search\SearchWidgets\BasicSearchResultSetWidget;
|
||||
use MediaWiki\Search\SearchWidgets\FullSearchResultWidget;
|
||||
use MediaWiki\Search\SearchWidgets\InterwikiSearchResultSetWidget;
|
||||
|
|
@ -99,9 +98,6 @@ class SpecialSearch extends SpecialPage {
|
|||
/** @var SearchEngineFactory */
|
||||
private $searchEngineFactory;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/** @var NamespaceInfo */
|
||||
private $nsInfo;
|
||||
|
||||
|
|
@ -131,7 +127,6 @@ class SpecialSearch extends SpecialPage {
|
|||
/**
|
||||
* @param SearchEngineConfig $searchConfig
|
||||
* @param SearchEngineFactory $searchEngineFactory
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param NamespaceInfo $nsInfo
|
||||
* @param IContentHandlerFactory $contentHandlerFactory
|
||||
* @param InterwikiLookup $interwikiLookup
|
||||
|
|
@ -142,7 +137,6 @@ class SpecialSearch extends SpecialPage {
|
|||
public function __construct(
|
||||
SearchEngineConfig $searchConfig,
|
||||
SearchEngineFactory $searchEngineFactory,
|
||||
PermissionManager $permissionManager,
|
||||
NamespaceInfo $nsInfo,
|
||||
IContentHandlerFactory $contentHandlerFactory,
|
||||
InterwikiLookup $interwikiLookup,
|
||||
|
|
@ -153,7 +147,6 @@ class SpecialSearch extends SpecialPage {
|
|||
parent::__construct( 'Search' );
|
||||
$this->searchConfig = $searchConfig;
|
||||
$this->searchEngineFactory = $searchEngineFactory;
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->nsInfo = $nsInfo;
|
||||
$this->contentHandlerFactory = $contentHandlerFactory;
|
||||
$this->interwikiLookup = $interwikiLookup;
|
||||
|
|
@ -600,8 +593,8 @@ class SpecialSearch extends SpecialPage {
|
|||
} elseif (
|
||||
$this->contentHandlerFactory->getContentHandler( $title->getContentModel() )
|
||||
->supportsDirectEditing()
|
||||
&& $this->permissionManager->quickUserCan( 'create', $this->getUser(), $title )
|
||||
&& $this->permissionManager->quickUserCan( 'edit', $this->getUser(), $title )
|
||||
&& $this->getContext()->getAuthority()->probablyCan( 'create', $title )
|
||||
&& $this->getContext()->getAuthority()->probablyCan( 'edit', $title )
|
||||
) {
|
||||
$messageName = 'searchmenu-new';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,8 +21,6 @@
|
|||
* @ingroup SpecialPage
|
||||
*/
|
||||
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
|
||||
/**
|
||||
* A special page that lists tags for edits
|
||||
*
|
||||
|
|
@ -45,15 +43,8 @@ class SpecialTags extends SpecialPage {
|
|||
*/
|
||||
protected $softwareActivatedTags;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/**
|
||||
* @param PermissionManager $permissionManager
|
||||
*/
|
||||
public function __construct( PermissionManager $permissionManager ) {
|
||||
public function __construct() {
|
||||
parent::__construct( 'Tags' );
|
||||
$this->permissionManager = $permissionManager;
|
||||
}
|
||||
|
||||
public function execute( $par ) {
|
||||
|
|
@ -85,10 +76,10 @@ class SpecialTags extends SpecialPage {
|
|||
$out->setPageTitle( $this->msg( 'tags-title' ) );
|
||||
$out->wrapWikiMsg( "<div class='mw-tags-intro'>\n$1\n</div>", 'tags-intro' );
|
||||
|
||||
$user = $this->getUser();
|
||||
$userCanManage = $this->permissionManager->userHasRight( $user, 'managechangetags' );
|
||||
$userCanDelete = $this->permissionManager->userHasRight( $user, 'deletechangetags' );
|
||||
$userCanEditInterface = $this->permissionManager->userHasRight( $user, 'editinterface' );
|
||||
$authority = $this->getContext()->getAuthority();
|
||||
$userCanManage = $authority->isAllowed( 'managechangetags' );
|
||||
$userCanDelete = $authority->isAllowed( 'deletechangetags' );
|
||||
$userCanEditInterface = $authority->isAllowed( 'editinterface' );
|
||||
|
||||
// Show form to create a tag
|
||||
if ( $userCanManage ) {
|
||||
|
|
@ -344,8 +335,8 @@ class SpecialTags extends SpecialPage {
|
|||
}
|
||||
|
||||
protected function showDeleteTagForm( $tag ) {
|
||||
$user = $this->getUser();
|
||||
if ( !$this->permissionManager->userHasRight( $user, 'deletechangetags' ) ) {
|
||||
$authority = $this->getContext()->getAuthority();
|
||||
if ( !$authority->isAllowed( 'deletechangetags' ) ) {
|
||||
throw new PermissionsError( 'deletechangetags' );
|
||||
}
|
||||
|
||||
|
|
@ -354,7 +345,7 @@ class SpecialTags extends SpecialPage {
|
|||
$out->addBacklinkSubtitle( $this->getPageTitle() );
|
||||
|
||||
// is the tag actually able to be deleted?
|
||||
$canDeleteResult = ChangeTags::canDeleteTag( $tag, $user );
|
||||
$canDeleteResult = ChangeTags::canDeleteTag( $tag, $authority );
|
||||
if ( !$canDeleteResult->isGood() ) {
|
||||
$out->wrapWikiTextAsInterface( 'error', $canDeleteResult->getWikiText() );
|
||||
if ( !$canDeleteResult->isOK() ) {
|
||||
|
|
@ -404,8 +395,8 @@ class SpecialTags extends SpecialPage {
|
|||
protected function showActivateDeactivateForm( $tag, $activate ) {
|
||||
$actionStr = $activate ? 'activate' : 'deactivate';
|
||||
|
||||
$user = $this->getUser();
|
||||
if ( !$this->permissionManager->userHasRight( $user, 'managechangetags' ) ) {
|
||||
$authority = $this->getContext()->getAuthority();
|
||||
if ( !$authority->isAllowed( 'managechangetags' ) ) {
|
||||
throw new PermissionsError( 'managechangetags' );
|
||||
}
|
||||
|
||||
|
|
@ -415,8 +406,11 @@ class SpecialTags extends SpecialPage {
|
|||
$out->addBacklinkSubtitle( $this->getPageTitle() );
|
||||
|
||||
// is it possible to do this?
|
||||
$func = $activate ? 'canActivateTag' : 'canDeactivateTag';
|
||||
$result = ChangeTags::$func( $tag, $user );
|
||||
if ( $activate ) {
|
||||
$result = ChangeTags::canActivateTag( $tag, $authority );
|
||||
} else {
|
||||
$result = ChangeTags::canDeactivateTag( $tag, $authority );
|
||||
}
|
||||
if ( !$result->isGood() ) {
|
||||
$out->wrapWikiTextAsInterface( 'error', $result->getWikiText() );
|
||||
if ( !$result->isOK() ) {
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@
|
|||
* @ingroup SpecialPage
|
||||
*/
|
||||
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use MediaWiki\User\UserOptionsLookup;
|
||||
use MediaWiki\User\WatchlistNotificationManager;
|
||||
use Wikimedia\Rdbms\IDatabase;
|
||||
|
|
@ -49,9 +48,6 @@ class SpecialWatchlist extends ChangesListSpecialPage {
|
|||
/** @var WatchlistNotificationManager */
|
||||
private $watchlistNotificationManager;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/** @var ILoadBalancer */
|
||||
private $loadBalancer;
|
||||
|
||||
|
|
@ -64,14 +60,12 @@ class SpecialWatchlist extends ChangesListSpecialPage {
|
|||
/**
|
||||
* @param WatchedItemStoreInterface $watchedItemStore
|
||||
* @param WatchlistNotificationManager $watchlistNotificationManager
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param ILoadBalancer $loadBalancer
|
||||
* @param UserOptionsLookup $userOptionsLookup
|
||||
*/
|
||||
public function __construct(
|
||||
WatchedItemStoreInterface $watchedItemStore,
|
||||
WatchlistNotificationManager $watchlistNotificationManager,
|
||||
PermissionManager $permissionManager,
|
||||
ILoadBalancer $loadBalancer,
|
||||
UserOptionsLookup $userOptionsLookup
|
||||
) {
|
||||
|
|
@ -79,7 +73,6 @@ class SpecialWatchlist extends ChangesListSpecialPage {
|
|||
|
||||
$this->watchedItemStore = $watchedItemStore;
|
||||
$this->watchlistNotificationManager = $watchlistNotificationManager;
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->loadBalancer = $loadBalancer;
|
||||
$this->userOptionsLookup = $userOptionsLookup;
|
||||
$this->maxDays = $this->getConfig()->get( 'RCMaxAge' ) / ( 3600 * 24 );
|
||||
|
|
@ -428,9 +421,10 @@ class SpecialWatchlist extends ChangesListSpecialPage {
|
|||
|
||||
// Log entries with DELETED_ACTION must not show up unless the user has
|
||||
// the necessary rights.
|
||||
if ( !$this->permissionManager->userHasRight( $user, 'deletedhistory' ) ) {
|
||||
$authority = $this->getContext()->getAuthority();
|
||||
if ( !$authority->isAllowed( 'deletedhistory' ) ) {
|
||||
$bitmask = LogPage::DELETED_ACTION;
|
||||
} elseif ( !$this->permissionManager->userHasAnyRight( $user, 'suppressrevision', 'viewsuppressed' ) ) {
|
||||
} elseif ( !$authority->isAllowedAny( 'suppressrevision', 'viewsuppressed' ) ) {
|
||||
$bitmask = LogPage::DELETED_ACTION | LogPage::DELETED_RESTRICTED;
|
||||
} else {
|
||||
$bitmask = 0;
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
use MediaWiki\Cache\LinkBatchFactory;
|
||||
use MediaWiki\Content\IContentHandlerFactory;
|
||||
use MediaWiki\Permissions\PermissionManager;
|
||||
use Wikimedia\Rdbms\IDatabase;
|
||||
use Wikimedia\Rdbms\ILoadBalancer;
|
||||
|
||||
|
|
@ -47,9 +46,6 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
|
|||
/** @var LinkBatchFactory */
|
||||
private $linkBatchFactory;
|
||||
|
||||
/** @var PermissionManager */
|
||||
private $permissionManager;
|
||||
|
||||
/** @var IContentHandlerFactory */
|
||||
private $contentHandlerFactory;
|
||||
|
||||
|
|
@ -64,7 +60,6 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
|
|||
/**
|
||||
* @param ILoadBalancer $loadBalancer
|
||||
* @param LinkBatchFactory $linkBatchFactory
|
||||
* @param PermissionManager $permissionManager
|
||||
* @param IContentHandlerFactory $contentHandlerFactory
|
||||
* @param SearchEngineFactory $searchEngineFactory
|
||||
* @param NamespaceInfo $namespaceInfo
|
||||
|
|
@ -72,7 +67,6 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
|
|||
public function __construct(
|
||||
ILoadBalancer $loadBalancer,
|
||||
LinkBatchFactory $linkBatchFactory,
|
||||
PermissionManager $permissionManager,
|
||||
IContentHandlerFactory $contentHandlerFactory,
|
||||
SearchEngineFactory $searchEngineFactory,
|
||||
NamespaceInfo $namespaceInfo
|
||||
|
|
@ -80,7 +74,6 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
|
|||
parent::__construct( 'Whatlinkshere' );
|
||||
$this->loadBalancer = $loadBalancer;
|
||||
$this->linkBatchFactory = $linkBatchFactory;
|
||||
$this->permissionManager = $permissionManager;
|
||||
$this->contentHandlerFactory = $contentHandlerFactory;
|
||||
$this->searchEngineFactory = $searchEngineFactory;
|
||||
$this->namespaceInfo = $namespaceInfo;
|
||||
|
|
@ -489,7 +482,7 @@ class SpecialWhatLinksHere extends IncludableSpecialPage {
|
|||
// if the page is editable, add an edit link
|
||||
if (
|
||||
// check user permissions
|
||||
$this->permissionManager->userHasRight( $this->getUser(), 'edit' ) &&
|
||||
$this->getContext()->getAuthority()->isAllowed( 'edit' ) &&
|
||||
// check, if the content model is editable through action=edit
|
||||
$this->contentHandlerFactory->getContentHandler( $target->getContentModel() )
|
||||
->supportsDirectEditing()
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@ class SpecialBlockTest extends SpecialPageTestBase {
|
|||
protected function newSpecialPage() {
|
||||
$services = MediaWikiServices::getInstance();
|
||||
return new SpecialBlock(
|
||||
$services->getPermissionManager(),
|
||||
$services->getBlockUtils(),
|
||||
$services->getBlockPermissionCheckerFactory(),
|
||||
$services->getBlockUserFactory(),
|
||||
|
|
|
|||
|
|
@ -26,7 +26,6 @@ class SpecialRedirectTest extends MediaWikiIntegrationTestCase {
|
|||
*/
|
||||
public function testDispatch( $method, $type, $value, $expectedStatus ) {
|
||||
$page = new SpecialRedirect(
|
||||
MediaWikiServices::getInstance()->getPermissionManager(),
|
||||
MediaWikiServices::getInstance()->getRepoGroup()
|
||||
);
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,6 @@ class SpecialSearchTest extends MediaWikiIntegrationTestCase {
|
|||
return new SpecialSearch(
|
||||
$services->getSearchEngineConfig(),
|
||||
$services->getSearchEngineFactory(),
|
||||
$services->getPermissionManager(),
|
||||
$services->getNamespaceInfo(),
|
||||
$services->getContentHandlerFactory(),
|
||||
$services->getInterwikiLookup(),
|
||||
|
|
@ -256,7 +255,6 @@ class SpecialSearchTest extends MediaWikiIntegrationTestCase {
|
|||
->setConstructorArgs( [
|
||||
$services->getSearchEngineConfig(),
|
||||
$services->getSearchEngineFactory(),
|
||||
$services->getPermissionManager(),
|
||||
$services->getNamespaceInfo(),
|
||||
$services->getContentHandlerFactory(),
|
||||
$services->getInterwikiLookup(),
|
||||
|
|
@ -368,7 +366,6 @@ class SpecialSearchTest extends MediaWikiIntegrationTestCase {
|
|||
->setConstructorArgs( [
|
||||
$services->getSearchEngineConfig(),
|
||||
$services->getSearchEngineFactory(),
|
||||
$services->getPermissionManager(),
|
||||
$services->getNamespaceInfo(),
|
||||
$services->getContentHandlerFactory(),
|
||||
$services->getInterwikiLookup(),
|
||||
|
|
@ -439,7 +436,6 @@ class SpecialSearchTest extends MediaWikiIntegrationTestCase {
|
|||
$specialSearch = new SpecialSearch(
|
||||
$services->getSearchEngineConfig(),
|
||||
$mockSearchEngineFactory,
|
||||
$services->getPermissionManager(),
|
||||
$services->getNamespaceInfo(),
|
||||
$services->getContentHandlerFactory(),
|
||||
$services->getInterwikiLookup(),
|
||||
|
|
|
|||
|
|
@ -48,7 +48,6 @@ class SpecialWatchlistTest extends SpecialPageTestBase {
|
|||
return new SpecialWatchlist(
|
||||
$services->getWatchedItemStore(),
|
||||
$services->getWatchlistNotificationManager(),
|
||||
$services->getPermissionManager(),
|
||||
$services->getDBLoadBalancer(),
|
||||
$services->getUserOptionsLookup()
|
||||
);
|
||||
|
|
|
|||
Loading…
Reference in a new issue