wiki.techinc.nl/includes/Rest/BasicAccess/MWBasicRequestAuthorizer.php
James D. Forrester 4f2d1efdda Coding style: Auto-fix MediaWiki.Classes.UnsortedUseStatements.UnsortedUse
Change-Id: I94a0ae83c65e8ee419bbd1ae1e86ab21ed4d8210
2020-01-10 09:32:25 -08:00

42 lines
1 KiB
PHP

<?php
namespace MediaWiki\Rest\BasicAccess;
use MediaWiki\Permissions\PermissionManager;
use MediaWiki\Rest\Handler;
use MediaWiki\Rest\RequestInterface;
use MediaWiki\User\UserIdentity;
/**
* The concrete implementation of basic read/write restrictions in MediaWiki
*
* @internal
*/
class MWBasicRequestAuthorizer extends BasicRequestAuthorizer {
/** @var UserIdentity */
private $user;
/** @var PermissionManager */
private $permissionManager;
public function __construct( RequestInterface $request, Handler $handler,
UserIdentity $user, PermissionManager $permissionManager
) {
parent::__construct( $request, $handler );
$this->user = $user;
$this->permissionManager = $permissionManager;
}
protected function isReadAllowed() {
return $this->permissionManager->isEveryoneAllowed( 'read' )
|| $this->isAllowed( 'read' );
}
protected function isWriteAllowed() {
return $this->isAllowed( 'writeapi' );
}
private function isAllowed( $action ) {
return $this->permissionManager->userHasRight( $this->user, $action );
}
}