X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2FrollbackEdits.php;h=878eb9b09db4046f562e0a1ce15529561826420b;hb=899f475d0dad8ea0a24f706fc8ac07e3097d6191;hp=34bc62bb67c690f32df60a6509e3436d230b9669;hpb=4eff5204d9ec6eb09df70d2fe017a2146cfa4238;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/rollbackEdits.php b/maintenance/rollbackEdits.php index 34bc62bb67..878eb9b09d 100644 --- a/maintenance/rollbackEdits.php +++ b/maintenance/rollbackEdits.php @@ -91,20 +91,26 @@ class RollbackEdits extends Maintenance { /** * Get all pages that should be rolled back for a given user - * @param string $user A name to check against rev_user_text + * @param string $user A name to check against * @return array */ private function getRollbackTitles( $user ) { $dbr = $this->getDB( DB_REPLICA ); $titles = []; - $results = $dbr->select( - [ 'page', 'revision' ], - [ 'page_namespace', 'page_title' ], - [ 'page_latest = rev_id', 'rev_user_text' => $user ], - __METHOD__ - ); - foreach ( $results as $row ) { - $titles[] = Title::makeTitle( $row->page_namespace, $row->page_title ); + $actorQuery = ActorMigration::newMigration() + ->getWhere( $dbr, 'rev_user', User::newFromName( $user, false ) ); + foreach ( $actorQuery['orconds'] as $cond ) { + $results = $dbr->select( + [ 'page', 'revision' ] + $actorQuery['tables'], + [ 'page_namespace', 'page_title' ], + [ $cond ], + __METHOD__, + [], + [ 'revision' => [ 'JOIN', 'page_latest = rev_id' ] ] + $actorQuery['joins'] + ); + foreach ( $results as $row ) { + $titles[] = Title::makeTitle( $row->page_namespace, $row->page_title ); + } } return $titles;