}
public function execute() {
- global $wgActorTableSchemaMigrationStage;
-
$db = $this->getDB();
$params = $this->extractRequestParams();
$this->requireMaxOneParameter( $params, 'group', 'excludegroup', 'rights', 'excluderights' );
$result = $this->getResult();
$revQuery = MediaWikiServices::getInstance()->getRevisionStore()->getQueryInfo();
- // For SCHEMA_COMPAT_READ_NEW, target indexes on the
- // revision_actor_temp table, otherwise on the revision table.
- $pageField = ( $wgActorTableSchemaMigrationStage & SCHEMA_COMPAT_READ_NEW )
- ? 'revactor_page' : 'rev_page';
- $idField = ( $wgActorTableSchemaMigrationStage & SCHEMA_COMPAT_READ_NEW )
- ? 'revactor_actor' : $revQuery['fields']['rev_user'];
- $countField = ( $wgActorTableSchemaMigrationStage & SCHEMA_COMPAT_READ_NEW )
- ? 'revactor_actor' : $revQuery['fields']['rev_user_text'];
+ // Target indexes on the revision_actor_temp table.
+ $pageField = 'revactor_page';
+ $idField = 'revactor_actor';
+ $countField = 'revactor_actor';
// First, count anons
$this->addTables( $revQuery['tables'] );
} elseif ( $params['rights'] ) {
$excludeGroups = false;
foreach ( $params['rights'] as $r ) {
- $limitGroups = array_merge( $limitGroups, User::getGroupsWithPermission( $r ) );
+ $limitGroups = array_merge( $limitGroups, $this->getPermissionManager()
+ ->getGroupsWithPermission( $r ) );
}
// If no group has the rights requested, no need to query
} elseif ( $params['excluderights'] ) {
$excludeGroups = true;
foreach ( $params['excluderights'] as $r ) {
- $limitGroups = array_merge( $limitGroups, User::getGroupsWithPermission( $r ) );
+ $limitGroups = array_merge( $limitGroups, $this->getPermissionManager()
+ ->getGroupsWithPermission( $r ) );
}
}
public function getAllowedParams() {
$userGroups = User::getAllGroups();
- $userRights = User::getAllRights();
+ $userRights = $this->getPermissionManager()->getAllPermissions();
return [
'group' => [