summaryrefslogtreecommitdiff
path: root/maintenance/nukePage.inc
diff options
context:
space:
mode:
Diffstat (limited to 'maintenance/nukePage.inc')
-rw-r--r--maintenance/nukePage.inc91
1 files changed, 0 insertions, 91 deletions
diff --git a/maintenance/nukePage.inc b/maintenance/nukePage.inc
deleted file mode 100644
index a19c6df6..00000000
--- a/maintenance/nukePage.inc
+++ /dev/null
@@ -1,91 +0,0 @@
-<?php
-
-/**
- * Support functions for the nukeArticle script
- *
- * @file
- * @ingroup Maintenance
- * @author Rob Church <robchur@gmail.com>
- */
-
-require_once( 'purgeOldText.inc' );
-
-function NukePage( $name, $delete = false ) {
-
- $dbw = wfGetDB( DB_MASTER );
- $dbw->begin();
-
- $tbl_pag = $dbw->tableName( 'page' );
- $tbl_rec = $dbw->tableName( 'recentchanges' );
- $tbl_rev = $dbw->tableName( 'revision' );
-
- # Get page ID
- echo( "Searching for \"$name\"..." );
- $title = Title::newFromText( $name );
- if( $title ) {
- $id = $title->getArticleID();
- $real = $title->getPrefixedText();
- $isGoodArticle = $title->isContentPage();
- echo( "found \"$real\" with ID $id.\n" );
-
- # Get corresponding revisions
- echo( "Searching for revisions..." );
- $res = $dbw->query( "SELECT rev_id FROM $tbl_rev WHERE rev_page = $id" );
- while( $row = $dbw->fetchObject( $res ) ) {
- $revs[] = $row->rev_id;
- }
- $count = count( $revs );
- echo( "found $count.\n" );
-
- # Delete the page record and associated recent changes entries
- if( $delete ) {
- echo( "Deleting page record..." );
- $dbw->query( "DELETE FROM $tbl_pag WHERE page_id = $id" );
- echo( "done.\n" );
- echo( "Cleaning up recent changes..." );
- $dbw->query( "DELETE FROM $tbl_rec WHERE rc_cur_id = $id" );
- echo( "done.\n" );
- }
-
- $dbw->commit();
-
- # Delete revisions as appropriate
- if( $delete && $count ) {
- echo( "Deleting revisions..." );
- DeleteRevisions( $revs );
- echo( "done.\n" );
- PurgeRedundantText( true );
- }
-
- # Update stats as appropriate
- if ( $delete ) {
- echo( "Updating site stats..." );
- $ga = $isGoodArticle ? -1 : 0; // if it was good, decrement that too
- $stats = new SiteStatsUpdate( 0, -$count, $ga, -1 );
- $stats->doUpdate();
- echo( "done.\n" );
- }
-
-
- } else {
- echo( "not found in database.\n" );
- $dbw->commit();
- }
-
-}
-
-function DeleteRevisions( $ids ) {
-
- $dbw = wfGetDB( DB_MASTER );
- $dbw->begin();
-
- $tbl_rev = $dbw->tableName( 'revision' );
-
- $set = implode( ', ', $ids );
- $dbw->query( "DELETE FROM $tbl_rev WHERE rev_id IN ( $set )" );
-
- $dbw->commit();
-
-}
-
-?> \ No newline at end of file