X-Git-Url: https://git.cyclocoop.org/%28%28?a=blobdiff_plain;f=includes%2Fapi%2FApiQueryAllRevisions.php;h=3af24597c2220bced603bd3288c3d91d5d80040a;hb=27c61fb1e94da9114314468fd00bcf129ec064b6;hp=68236465d13d00d9f413ad7d04db15dfbb34dd05;hpb=faf7cc4a09848c538320bd2b9067b1a77c0a0183;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiQueryAllRevisions.php b/includes/api/ApiQueryAllRevisions.php index 68236465d1..3af24597c2 100644 --- a/includes/api/ApiQueryAllRevisions.php +++ b/includes/api/ApiQueryAllRevisions.php @@ -104,19 +104,17 @@ class ApiQueryAllRevisions extends ApiQueryRevisionsBase { } if ( $params['user'] !== null ) { - $id = User::idFromName( $params['user'] ); - if ( $id ) { - $this->addWhereFld( 'rev_user', $id ); - } else { - $this->addWhereFld( 'rev_user_text', $params['user'] ); - } + $actorQuery = ActorMigration::newMigration() + ->getWhere( $db, 'rev_user', User::newFromName( $params['user'], false ) ); + $this->addTables( $actorQuery['tables'] ); + $this->addJoinConds( $actorQuery['joins'] ); + $this->addWhere( $actorQuery['conds'] ); } elseif ( $params['excludeuser'] !== null ) { - $id = User::idFromName( $params['excludeuser'] ); - if ( $id ) { - $this->addWhere( 'rev_user != ' . $id ); - } else { - $this->addWhere( 'rev_user_text != ' . $db->addQuotes( $params['excludeuser'] ) ); - } + $actorQuery = ActorMigration::newMigration() + ->getWhere( $db, 'rev_user', User::newFromName( $params['excludeuser'], false ) ); + $this->addTables( $actorQuery['tables'] ); + $this->addJoinConds( $actorQuery['joins'] ); + $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' ); } if ( $params['user'] !== null || $params['excludeuser'] !== null ) {