X-Git-Url: http://git.cyclocoop.org/?a=blobdiff_plain;f=maintenance%2FdeleteBatch.php;h=6c89e671eabecabb364ced4255b9f7efb30d6dc2;hb=8b46b893be54b9b5fe083c8cb50989cdfad91610;hp=93507b3467e487625723b776d04f1648042c1d94;hpb=05b8af8b91dac965c67571668187d1dc2511ae03;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/deleteBatch.php b/maintenance/deleteBatch.php index 93507b3467..6c89e671ea 100644 --- a/maintenance/deleteBatch.php +++ b/maintenance/deleteBatch.php @@ -55,11 +55,15 @@ class DeleteBatch extends Maintenance { chdir( $oldCwd ); # Options processing - $username = $this->getOption( 'u', 'Delete page script' ); + $username = $this->getOption( 'u', false ); $reason = $this->getOption( 'r', '' ); $interval = $this->getOption( 'i', 0 ); - $user = User::newFromName( $username ); + if ( $username === false ) { + $user = User::newSystemUser( 'Delete page script', array( 'steal' => true ) ); + } else { + $user = User::newFromName( $username ); + } if ( !$user ) { $this->error( "Invalid username", true ); } @@ -76,7 +80,7 @@ class DeleteBatch extends Maintenance { $this->error( "Unable to read file, exiting", true ); } - $dbw = wfGetDB( DB_MASTER ); + $dbw = $this->getDB( DB_MASTER ); # Handle each entry // @codingStandardsIgnoreStart Ignore Generic.CodeAnalysis.ForLoopWithTestFunctionCall.NotAllowed @@ -97,7 +101,6 @@ class DeleteBatch extends Maintenance { } $this->output( $title->getPrefixedText() ); - $dbw->begin( __METHOD__ ); if ( $title->getNamespace() == NS_FILE ) { $img = wfFindFile( $title, array( 'ignoreRedirect' => true ) ); if ( $img && $img->isLocal() && !$img->delete( $reason ) ) { @@ -106,8 +109,7 @@ class DeleteBatch extends Maintenance { } $page = WikiPage::factory( $title ); $error = ''; - $success = $page->doDeleteArticle( $reason, false, 0, false, $error, $user ); - $dbw->commit( __METHOD__ ); + $success = $page->doDeleteArticle( $reason, false, 0, true, $error, $user ); if ( $success ) { $this->output( " Deleted!\n" ); } else {