diff options
Diffstat (limited to 'resources/mediawiki.special/mediawiki.special.search.js')
-rw-r--r-- | resources/mediawiki.special/mediawiki.special.search.js | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/resources/mediawiki.special/mediawiki.special.search.js b/resources/mediawiki.special/mediawiki.special.search.js index d4317188..bac27fc6 100644 --- a/resources/mediawiki.special/mediawiki.special.search.js +++ b/resources/mediawiki.special/mediawiki.special.search.js @@ -1,11 +1,37 @@ /* - * JavaScript for Specical:Search + * JavaScript for Special:Search */ -( function( $, mw ) { +jQuery( function( $ ) { // Emulate HTML5 autofocus behavior in non HTML5 compliant browsers if ( !( 'autofocus' in document.createElement( 'input' ) ) ) { $( 'input[autofocus]:first' ).focus(); } -} )( jQuery, mediaWiki );
\ No newline at end of file +// Bind check all/none button +var $checkboxes = $('#powersearch input[id^=mw-search-ns]'); +$('#mw-search-toggleall').click( function() { + $checkboxes.prop("checked", true); +} ); +$('#mw-search-togglenone').click( function() { + $checkboxes.prop("checked", false); +} ); + +// Change the header search links to what user entered +var headerLinks = $('.search-types a'); +$('#searchText, #powerSearchText').change(function() { + var searchterm = $(this).val(); + headerLinks.each( function() { + var parts = this.href.split( 'search=' ); + var lastpart = ''; + var prefix = 'search='; + if( parts.length > 1 && parts[1].indexOf('&') >= 0 ) { + lastpart = parts[1].substring( parts[1].indexOf('&') ); + } else { + prefix = '&search='; + } + this.href = parts[0] + prefix + encodeURIComponent( searchterm ) + lastpart; + }); +}).trigger('change'); + +} );
\ No newline at end of file |