MediaWiki:Gadget-wrcCollapsible.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/**
* Collapse the sections on the Wikimedia Resource Center pages. This is done to
* give an immediate, high-level view of each category.
*/
( function () {
'use strict';
mw.loader.using( [
'oojs-ui',
'oojs-ui.styles.icons-movement'
] ).done( function () {
if (
mw.config.values.wgPageName == 'Wikimedia_Resource_Center/All' ||
mw.config.values.wgPageName == 'Wikimedia_Resource_Center/For_program_coordinators' ||
mw.config.values.wgPageName == 'Wikimedia_Resource_Center/For_contributors' ||
mw.config.values.wgPageName == 'Wikimedia_Resource_Center/For_developers' ||
mw.config.values.wgPageName == 'Wikimedia_Resource_Center/For_affiliate_organizers'
) {
// Collapsible sections, even on desktop
$( '.mw-parser-output h2' ).each( function () {
var $sectionHeader, doTheSwitch, toggleWidget;
$sectionHeader = $( this );
$sectionHeader
.nextUntil( 'h2' )
.wrapAll( '<div class="section-content" style="display:none;"></div>' );
$sectionHeader.data( 'collapsed', 'true' );
doTheSwitch = function () {
if ( $sectionHeader.data( 'collapsed' ) == 'true' ) {
$sectionHeader.next().css( 'display', 'block' );
toggleWidget.setIcon( 'collapse' );
$sectionHeader.data( 'collapsed', 'false' );
} else {
$sectionHeader.next().css( 'display', 'none' );
toggleWidget.setIcon( 'expand' );
$sectionHeader.data( 'collapsed', 'true' );
}
};
toggleWidget = new OO.ui.ButtonWidget( {
framed: false,
icon: 'expand'
} ).on( 'click', function() {
doTheSwitch();
} );
toggleWidget.$element.css( 'font-size', '70%' );
$sectionHeader.prepend( toggleWidget.$element );
$( '.toc' ).css( 'display', 'none' );
$sectionHeader.click( doTheSwitch );
} );
}
} );
}() );