mediawiki-extensions-Replac.../resources/ext.ReplaceText.js
libraryupgrader e150d1ca6c build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 34.0.0 → 35.0.0
* mediawiki/minus-x: 1.1.0 → 1.1.1

npm:
* eslint-config-wikimedia: 0.17.0 → 0.18.1

Change-Id: I65d4f456cb19d45ee6da21d8fb3e61ee87e9d5e5
2021-01-30 09:22:05 +00:00

48 lines
1.3 KiB
JavaScript

( function () {
'use strict';
function invertSelections() {
var form = document.getElementById( 'choose_pages' ),
numElements = form.elements.length,
i,
curElement;
for ( i = 0; i < numElements; i++ ) {
curElement = form.elements[ i ];
if ( curElement.type === 'checkbox' && curElement.id !== 'create-redirect' &&
curElement.id !== 'watch-pages' && curElement.id !== 'doAnnounce' ) {
form.elements[ i ].checked = form.elements[ i ].checked !== true;
}
}
}
$( function () {
var $checkboxes = $( '#powersearch input[id^=mw-search-ns]' );
$( '#replacetext-invert' )
.on( 'click', invertSelections )
.prop( 'disabled', false );
// Create check all/none button
$( '#mw-search-togglebox' ).append(
$( '<label>' )
.text( mw.msg( 'powersearch-togglelabel' ) )
).append(
$( '<input>' ).attr( 'type', 'button' )
.attr( 'id', 'mw-search-toggleall' )
.prop( 'value', mw.msg( 'powersearch-toggleall' ) )
.on( 'click', function () {
$checkboxes.prop( 'checked', true );
} )
).append(
$( '<input>' ).attr( 'type', 'button' )
.attr( 'id', 'mw-search-togglenone' )
.prop( 'value', mw.msg( 'powersearch-togglenone' ) )
.on( 'click', function () {
$checkboxes.prop( 'checked', false );
} )
);
} );
}() );