X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=resources%2Fsrc%2Fmediawiki%2Fmediawiki.checkboxtoggle.js;h=ab7a74e943c3a687aaee33996193a014fa650243;hb=1e3c2e5904d628c001a8d65909b135ea9bf042aa;hp=4be4a8da0d214b16ea55548214ca63d6e5065153;hpb=ed5e9a27d9d32f9689554d9bbcd4eb16beac24f6;p=lhc%2Fweb%2Fwiklou.git diff --git a/resources/src/mediawiki/mediawiki.checkboxtoggle.js b/resources/src/mediawiki/mediawiki.checkboxtoggle.js index 4be4a8da0d..ab7a74e943 100644 --- a/resources/src/mediawiki/mediawiki.checkboxtoggle.js +++ b/resources/src/mediawiki/mediawiki.checkboxtoggle.js @@ -12,25 +12,30 @@ ( function ( mw, $ ) { 'use strict'; - var $checkboxes = $( 'li input[type=checkbox]' ); + $( function () { + // FIXME: This shouldn't be a global selector to avoid conflicts + // with unrelated content on the same page. (T131318) + var $checkboxes = $( 'li input[type="checkbox"]' ); - function selectAll( check ) { - $checkboxes.prop( 'checked', check ); - } + function selectAll( check ) { + $checkboxes.prop( 'checked', check ); + } - $( '#checkbox-all' ).click( function ( e ) { - selectAll( true ); - e.preventDefault(); - } ); - $( '#checkbox-none' ).click( function ( e ) { - selectAll( false ); - e.preventDefault(); - } ); - $( '#checkbox-invert' ).click( function ( e ) { - $checkboxes.each( function () { - $( this ).prop( 'checked', !$( this ).is( ':checked' ) ); + $( '.mw-checkbox-all' ).click( function ( e ) { + e.preventDefault(); + selectAll( true ); + } ); + $( '.mw-checkbox-none' ).click( function ( e ) { + e.preventDefault(); + selectAll( false ); } ); - e.preventDefault(); + $( '.mw-checkbox-invert' ).click( function ( e ) { + e.preventDefault(); + $checkboxes.prop( 'checked', function ( i, val ) { + return !val; + } ); + } ); + } ); }( mediaWiki, jQuery ) );