From: Brion Vibber Date: Wed, 15 Oct 2008 21:35:19 +0000 (+0000) Subject: Back out r41630 -- merging of Nuke extension to core X-Git-Tag: 1.31.0-rc.0~44731 X-Git-Url: https://git.cyclocoop.org/%28%28?a=commitdiff_plain;h=3b38584b2f7b5148dce647d0b8401d07bc0e8691;p=lhc%2Fweb%2Fwiklou.git Back out r41630 -- merging of Nuke extension to core Nuke started as a crappy hack, and it's still pretty crappy. ;) Needs better reversibility tools etc before we consider merging to core. --- diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 9e5a780343..6cfc0d3738 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -59,7 +59,6 @@ The following extensions are migrated into MediaWiki 1.14: * Special:LinkSearch to search for external links (was extension LinkSearch) * RenderHash * NoMoveUserPages -* Special:Nuke to mass delete all pages created by a user * Poem (patch by Nathaniel Herman) * UniversalEditButton diff --git a/includes/AutoLoader.php b/includes/AutoLoader.php index 49e763cb0f..5382fcca2e 100644 --- a/includes/AutoLoader.php +++ b/includes/AutoLoader.php @@ -478,7 +478,6 @@ $wgAutoloadLocalClasses = array( 'SpecialBookSources' => 'includes/specials/SpecialBooksources.php', 'SpecialListGroupRights' => 'includes/specials/SpecialListgrouprights.php', 'SpecialMostlinkedtemplates' => 'includes/specials/SpecialMostlinkedtemplates.php', - 'SpecialNuke' => 'includes/specials/SpecialNuke.php', 'SpecialPrefixindex' => 'includes/specials/SpecialPrefixindex.php', 'SpecialRandomredirect' => 'includes/specials/SpecialRandomredirect.php', 'SpecialRecentchanges' => 'includes/specials/SpecialRecentchanges.php', diff --git a/includes/DefaultSettings.php b/includes/DefaultSettings.php index 88d2727a77..209a3ee7c3 100644 --- a/includes/DefaultSettings.php +++ b/includes/DefaultSettings.php @@ -1186,8 +1186,6 @@ $wgGroupPermissions['sysop']['markbotedits'] = true; $wgGroupPermissions['sysop']['apihighlimits'] = true; $wgGroupPermissions['sysop']['browsearchive'] = true; $wgGroupPermissions['sysop']['noratelimit'] = true; -$wgGroupPermissions['sysop']['nuke'] = true; - #$wgGroupPermissions['sysop']['mergehistory'] = true; // Permission to change users' group assignments @@ -2862,7 +2860,6 @@ $wgSpecialPageGroups = array( 'Export' => 'pagetools', 'Import' => 'pagetools', 'Whatlinkshere' => 'pagetools', - 'Nuke' => 'pagetools', 'Statistics' => 'wiki', 'Version' => 'wiki', diff --git a/includes/SpecialPage.php b/includes/SpecialPage.php index f807d19069..7c576723e1 100644 --- a/includes/SpecialPage.php +++ b/includes/SpecialPage.php @@ -164,7 +164,6 @@ class SpecialPage 'Listadmins' => array( 'SpecialRedirectToSpecial', 'Listadmins', 'Listusers', 'sysop' ), 'MergeHistory' => array( 'SpecialPage', 'MergeHistory', 'mergehistory' ), 'Listbots' => array( 'SpecialRedirectToSpecial', 'Listbots', 'Listusers', 'bot' ), - 'Nuke' => 'SpecialNuke', ); static public $mAliases; diff --git a/includes/specials/SpecialNuke.php b/includes/specials/SpecialNuke.php deleted file mode 100644 index ff17a57803..0000000000 --- a/includes/specials/SpecialNuke.php +++ /dev/null @@ -1,160 +0,0 @@ -userCanExecute( $wgUser ) ){ - $this->displayRestrictionError(); - return; - } - - $this->setHeaders(); - $this->outputHeader(); - - $target = $wgRequest->getText( 'target', $par ); - $reason = $wgRequest->getText( 'wpReason', - wfMsgForContent( 'nuke-defaultreason', $target ) ); - $posted = $wgRequest->wasPosted() && - $wgUser->matchEditToken( $wgRequest->getVal( 'wpEditToken' ) ); - if( $posted ) { - $pages = $wgRequest->getArray( 'pages' ); - if( $pages ) { - return $this->doDelete( $pages, $reason ); - } - } - if( $target != '' ) { - $this->listForm( $target, $reason ); - } else { - $this->promptForm(); - } - } - - function promptForm() { - global $wgUser, $wgOut; - - $sk = $wgUser->getSkin(); - - $nuke = $this->getTitle(); - $submit = Xml::element( 'input', array( 'type' => 'submit', 'value' => wfMsgHtml( 'nuke-submit-user' ) ) ); - - $wgOut->addWikiMsg( 'nuke-tools' ); - $wgOut->addHTML( Xml::element( 'form', array( - 'action' => $nuke->getLocalURL( 'action=submit' ), - 'method' => 'post' ), - null ) . - Xml::element( 'input', array( - 'type' => 'text', - 'size' => 40, - 'name' => 'target' ) ) . - "\n$submit\n" ); - - $wgOut->addHTML( "" ); - } - - function listForm( $username, $reason ) { - global $wgUser, $wgOut, $wgLang; - - $pages = $this->getNewPages( $username ); - $escapedName = wfEscapeWikiText( $username ); - if( count( $pages ) == 0 ) { - $wgOut->addWikiMsg( 'nuke-nopages', $escapedName ); - return $this->promptForm(); - } - $wgOut->addWikiMsg( 'nuke-list', $escapedName ); - - $nuke = $this->getTitle(); - $submit = Xml::element( 'input', array( 'type' => 'submit', 'value' => wfMsgHtml( 'nuke-submit-delete' ) ) ); - - $wgOut->addHTML( Xml::element( 'form', array( - 'action' => $nuke->getLocalURL( 'action=delete' ), - 'method' => 'post' ), - null ) . - "\n
" . - wfMsgHtml( 'deletecomment' ) . ' ' . - Xml::element( 'input', array( - 'name' => 'wpReason', - 'value' => $reason, - 'size' => 60 ) ) . - "

" . - $submit . - Xml::element( 'input', array( - 'type' => 'hidden', - 'name' => 'wpEditToken', - 'value' => $wgUser->editToken() ) ) . - "\n\n$submit" ); - } - - function getNewPages( $username ) { - $dbr = wfGetDB( DB_SLAVE ); - $result = $dbr->select( 'recentchanges', - array( 'rc_namespace', 'rc_title', 'rc_timestamp', 'COUNT(*) AS edits' ), - array( - 'rc_user_text' => $username, - '(rc_new = 1) OR (rc_log_type = "upload" AND rc_log_action = "upload")' - ), - __METHOD__, - array( - 'ORDER BY' => 'rc_timestamp DESC', - 'GROUP BY' => 'rc_namespace, rc_title' - ) - ); - $pages = array(); - while( $row = $result->fetchObject() ) { - $pages[] = array( Title::makeTitle( $row->rc_namespace, $row->rc_title ), $row->edits ); - } - $result->free(); - return $pages; - } - - function doDelete( $pages, $reason ) { - foreach( $pages as $page ) { - $title = Title::newFromUrl( $page ); - $file = $title->getNamespace() == NS_IMAGE ? wfLocalFile( $title ) : false; - if ( $file ) { - $oldimage = null; // Must be passed by reference - FileDeleteForm::doDelete( $title, $file, $oldimage, $reason, false ); - } else { - $article = new Article( $title ); - $article->doDelete( $reason ); - } - } - } -} diff --git a/languages/messages/MessagesAr.php b/languages/messages/MessagesAr.php index 91d2f760dd..63adce034a 100644 --- a/languages/messages/MessagesAr.php +++ b/languages/messages/MessagesAr.php @@ -370,7 +370,6 @@ $specialPageAliases = array( 'Blankpage' => array( 'صفحة_فارغة' ), 'LinkSearch' => array( 'بحث_الوصلات' ), 'DeletedContributions' => array( 'مساهمات_محذوفة' ), - 'Nuke' => array( 'حذف_كمي' ), ); $imageFiles = array( diff --git a/languages/messages/MessagesArz.php b/languages/messages/MessagesArz.php index 584a73feed..2e9f1fa10e 100644 --- a/languages/messages/MessagesArz.php +++ b/languages/messages/MessagesArz.php @@ -267,7 +267,6 @@ $specialPageAliases = array( 'Blankpage' => array( 'صفحة_فارغة' ), 'LinkSearch' => array( 'بحث_الوصلات' ), 'DeletedContributions' => array( 'مساهمات_محذوفة' ), - 'Nuke' => array( 'حذف_كمى' ), ); $messages = array( diff --git a/languages/messages/MessagesDe.php b/languages/messages/MessagesDe.php index 67dda68800..d9878fea48 100644 --- a/languages/messages/MessagesDe.php +++ b/languages/messages/MessagesDe.php @@ -158,7 +158,6 @@ $specialPageAliases = array( 'Blankpage' => array( 'Leerseite' ), 'LinkSearch' => array( 'Weblink-Suche' ), 'DeletedContributions' => array( 'Gelöschte Beiträge' ), - 'Nuke' => array( 'Massenlöschung' ), ); $datePreferences = array( diff --git a/languages/messages/MessagesEn.php b/languages/messages/MessagesEn.php index e85ca0a5da..b30688a01c 100644 --- a/languages/messages/MessagesEn.php +++ b/languages/messages/MessagesEn.php @@ -442,7 +442,6 @@ $specialPageAliases = array( 'Blankpage' => array( 'BlankPage' ), 'LinkSearch' => array( 'LinkSearch' ), 'DeletedContributions' => array( 'DeletedContributions' ), - 'Nuke' => array( 'Nuke' ), ); /** @@ -3723,16 +3722,4 @@ Enter the filename without the "{{ns:image}}:" prefix.', #Put all regex fragments above this line. Leave this line exactly as it is', -# Special:Nuke -'nuke' => 'Mass delete', -'nuke-nopages' => 'No new pages by [[Special:Contributions/$1|$1]] in recent changes.', -'nuke-list' => 'The following pages were recently created by [[Special:Contributions/$1|$1]]; -put in a comment and hit the button to delete them.', -'nuke-defaultreason' => 'Mass removal of pages added by $1', -'nuke-tools' => 'This tool allows for mass deletions of pages recently added by a given user or IP. -Input the username or IP to get a list of pages to delete.', -'nuke-submit-user' => 'Go', -'nuke-submit-delete' => 'Delete selected', -'right-nuke' => 'Mass delete pages', - ); diff --git a/languages/messages/MessagesHe.php b/languages/messages/MessagesHe.php index 08fc09d74d..6d745bbd0b 100644 --- a/languages/messages/MessagesHe.php +++ b/languages/messages/MessagesHe.php @@ -286,7 +286,6 @@ $specialPageAliases = array( 'Blankpage' => array( 'דף_ריק' ), 'LinkSearch' => array( 'חיפוש_קישורים_חיצוניים' ), 'DeletedContributions' => array( 'תרומות_מחוקות' ), - 'Nuke' => array( 'מחיקה_מרובה' ), ); $namespaceNames = array( diff --git a/languages/messages/MessagesNds_nl.php b/languages/messages/MessagesNds_nl.php index 46d9b10b9a..cf1125b4e1 100644 --- a/languages/messages/MessagesNds_nl.php +++ b/languages/messages/MessagesNds_nl.php @@ -251,7 +251,6 @@ $specialPageAliases = array( 'Withoutinterwiki' => array( 'Gien_interwiki' ), 'LinkSearch' => array( 'Verwiezingen_zeuken' ), 'DeletedContributions' => array( 'Vort-ehaolen gebrukersbiedragen' ), - 'Nuke' => array( 'Massaal_vortdoon' ), ); $linkTrail = '/^([a-zäöüïëéèà]+)(.*)$/sDu'; diff --git a/languages/messages/MessagesNl.php b/languages/messages/MessagesNl.php index ecd6a05a63..8f0c53148d 100644 --- a/languages/messages/MessagesNl.php +++ b/languages/messages/MessagesNl.php @@ -282,7 +282,6 @@ $specialPageAliases = array( 'ListUserRestrictions' => array( 'Gebruikersbeperkingen' ), 'RemoveRestrictions' => array( 'BeperkingenVerwijderen' ), 'RestrictUser' => array( 'GebruikerBeperken' ), - 'Nuke' => array( 'MassaalVerwijderen' ), ); $linkTrail = '/^([a-zäöüïëéèà]+)(.*)$/sDu'; diff --git a/languages/messages/MessagesNo.php b/languages/messages/MessagesNo.php index a8cefd4afc..76ed979994 100644 --- a/languages/messages/MessagesNo.php +++ b/languages/messages/MessagesNo.php @@ -163,7 +163,6 @@ $specialPageAliases = array( 'Blankpage' => array( 'Blank side' ), 'LinkSearch' => array( 'Lenkesøk' ), 'DeletedContributions' => array( 'Slettede bidrag' ), - 'Nuke' => array( 'Massesletting' ), ); $messages = array( diff --git a/maintenance/language/messages.inc b/maintenance/language/messages.inc index fdcece4101..a19ab8ebf8 100644 --- a/maintenance/language/messages.inc +++ b/maintenance/language/messages.inc @@ -2810,16 +2810,6 @@ $wgMessageStructure = array( 'external_images' => array( 'external_image_whitelist', ), - 'special-nuke' => array( - 'nuke', - 'nuke-nopages', - 'nuke-list', - 'nuke-defaultreason', - 'nuke-tools', - 'nuke-submit-user', - 'nuke-submit-delete', - 'right-nuke', - ), ); /** Comments for each block */ @@ -3015,7 +3005,6 @@ Variants for Chinese language", 'special-specialpages' => 'Special:SpecialPages', 'special-blank' => 'Special:BlankPage', 'external_images' => 'External image whitelist', - 'special-nuke' => 'Special:Nuke', ); /** Short comments for standalone messages */