X-Git-Url: https://git.cyclocoop.org/%27.WWW_URL.%27admin/?a=blobdiff_plain;f=includes%2Fwatcheditem%2FWatchedItemQueryService.php;h=d8e49852aaf4bedca2f9c329bfd49b1faead8521;hb=4e9eb2f8d75784c78715e7dc3a9c8084d5c54943;hp=13f2b5240683dab7dc8d3252ae1876852c4c81a7;hpb=f66b93107594a4fc56e6cb86f32543fd153cdf40;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/watcheditem/WatchedItemQueryService.php b/includes/watcheditem/WatchedItemQueryService.php index 13f2b52406..d8e49852aa 100644 --- a/includes/watcheditem/WatchedItemQueryService.php +++ b/includes/watcheditem/WatchedItemQueryService.php @@ -1,6 +1,7 @@ loadBalancer = $loadBalancer; $this->commentStore = $commentStore; $this->actorMigration = $actorMigration; $this->watchedItemStore = $watchedItemStore; + $this->permissionManager = $permissionManager; } /** @@ -549,7 +555,7 @@ class WatchedItemQueryService { return $conds; } - private function getUserRelatedConds( IDatabase $db, User $user, array $options ) { + private function getUserRelatedConds( IDatabase $db, UserIdentity $user, array $options ) { if ( !array_key_exists( 'onlyByUser', $options ) && !array_key_exists( 'notByUser', $options ) ) { return []; } @@ -566,9 +572,11 @@ class WatchedItemQueryService { // Avoid brute force searches (T19342) $bitmask = 0; - if ( !$user->isAllowed( 'deletedhistory' ) ) { + if ( !$this->permissionManager->userHasRight( $user, 'deletedhistory' ) ) { $bitmask = RevisionRecord::DELETED_USER; - } elseif ( !$user->isAllowedAny( 'suppressrevision', 'viewsuppressed' ) ) { + } elseif ( !$this->permissionManager + ->userHasAnyRight( $user, 'suppressrevision', 'viewsuppressed' ) + ) { $bitmask = RevisionRecord::DELETED_USER | RevisionRecord::DELETED_RESTRICTED; } if ( $bitmask ) { @@ -578,13 +586,15 @@ class WatchedItemQueryService { return $conds; } - private function getExtraDeletedPageLogEntryRelatedCond( IDatabase $db, User $user ) { + private function getExtraDeletedPageLogEntryRelatedCond( IDatabase $db, UserIdentity $user ) { // LogPage::DELETED_ACTION hides the affected page, too. So hide those // entirely from the watchlist, or someone could guess the title. $bitmask = 0; - if ( !$user->isAllowed( 'deletedhistory' ) ) { + if ( !$this->permissionManager->userHasRight( $user, 'deletedhistory' ) ) { $bitmask = LogPage::DELETED_ACTION; - } elseif ( !$user->isAllowedAny( 'suppressrevision', 'viewsuppressed' ) ) { + } elseif ( !$this->permissionManager + ->userHasAnyRight( $user, 'suppressrevision', 'viewsuppressed' ) + ) { $bitmask = LogPage::DELETED_ACTION | LogPage::DELETED_RESTRICTED; } if ( $bitmask ) {