From 6c0b32fcec36583c3538cc042b4fdf6465ead725 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mat=C4=9Bj=20Grabovsk=C3=BD?= Date: Sat, 18 Jun 2011 19:57:17 +0000 Subject: [PATCH] (bug 29443) Special:Undelete should invert checkboxes without reloading Committed patch with code originally by [[b:User:Darklama]] --- RELEASE-NOTES-1.19 | 2 ++ includes/specials/SpecialUndelete.php | 2 +- resources/Resources.php | 3 +++ .../mediawiki.special.undelete.js | 15 +++++++++++++++ 4 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 resources/mediawiki.special/mediawiki.special.undelete.js diff --git a/RELEASE-NOTES-1.19 b/RELEASE-NOTES-1.19 index 2412d9f88e..40b472b73b 100644 --- a/RELEASE-NOTES-1.19 +++ b/RELEASE-NOTES-1.19 @@ -97,6 +97,8 @@ production. enter an e-mail address. * (bug 25375) Add canonical namespaces to JavaScript "wgNamespaceIds" * The class JpegOrTiffHandler was renamed ExifBitmapHandler. +* (bug 29443) Special:Undelete should use JavaScript to invert all checkboxes + without reloading the page === API changes in 1.19 === * BREAKING CHANGE: action=watch now requires POST and token. diff --git a/includes/specials/SpecialUndelete.php b/includes/specials/SpecialUndelete.php index 943de948ea..0d8ad07bd4 100644 --- a/includes/specials/SpecialUndelete.php +++ b/includes/specials/SpecialUndelete.php @@ -1070,11 +1070,11 @@ class SpecialUndelete extends SpecialPage { $sk = $wgUser->getSkin(); if( $this->mAllowed ) { + $wgOut->addModules( 'mediawiki.special.undelete' ); $wgOut->setPageTitle( wfMsg( 'undeletepage' ) ); } else { $wgOut->setPageTitle( wfMsg( 'viewdeletedpage' ) ); } - $wgOut->wrapWikiMsg( "
\n$1\n
\n", array( 'undeletepagetitle', $this->mTargetObj->getPrefixedText() ) diff --git a/resources/Resources.php b/resources/Resources.php index 0291d3946f..25c13cec2b 100644 --- a/resources/Resources.php +++ b/resources/Resources.php @@ -518,6 +518,9 @@ return array( 'mediawiki.special.block' => array( 'scripts' => 'resources/mediawiki.special/mediawiki.special.block.js', ), + 'mediawiki.special.undelete' => array( + 'scripts' => 'resources/mediawiki.special/mediawiki.special.undelete.js', + ), 'mediawiki.special.movePage' => array( 'scripts' => 'resources/mediawiki.special/mediawiki.special.movePage.js', 'dependencies' => 'jquery.byteLimit', diff --git a/resources/mediawiki.special/mediawiki.special.undelete.js b/resources/mediawiki.special/mediawiki.special.undelete.js new file mode 100644 index 0000000000..9493504302 --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.undelete.js @@ -0,0 +1,15 @@ +/* + * JavaScript for Specical:Undelete + * @author: Code taken from [[b:MediaWiki:Gadget-EnhancedUndelete.js]] (originally written by [[b:User:Darklama]]) + */ +( function( $ ) { + $(function() { + $('#mw-undelete-invert').click( function(e) { + e.stopImmediatePropagation(); + $('input:checkbox').each( function() { + this.checked = !this.checked; + }); + return false; + }); + }); +} )( jQuery ); -- 2.20.1