From c1f9b1f7b1b77776192048005dcc66dcf3df2bfb Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sat, 27 Dec 2014 15:41:37 +0100 Subject: Update to MediaWiki 1.24.1 --- resources/src/mediawiki/mediawiki.toc.js | 60 ++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 resources/src/mediawiki/mediawiki.toc.js (limited to 'resources/src/mediawiki/mediawiki.toc.js') diff --git a/resources/src/mediawiki/mediawiki.toc.js b/resources/src/mediawiki/mediawiki.toc.js new file mode 100644 index 00000000..45338ea7 --- /dev/null +++ b/resources/src/mediawiki/mediawiki.toc.js @@ -0,0 +1,60 @@ +( function ( mw, $ ) { + 'use strict'; + + // Table of contents toggle + mw.hook( 'wikipage.content' ).add( function ( $content ) { + var $toc, $tocTitle, $tocToggleLink, $tocList, hideToc; + $toc = $content.find( '#toc' ); + $tocTitle = $content.find( '#toctitle' ); + $tocToggleLink = $content.find( '#togglelink' ); + $tocList = $toc.find( 'ul' ).eq( 0 ); + + // Hide/show the table of contents element + function toggleToc() { + if ( $tocList.is( ':hidden' ) ) { + $tocList.slideDown( 'fast' ); + $tocToggleLink.text( mw.msg( 'hidetoc' ) ); + $toc.removeClass( 'tochidden' ); + $.cookie( 'mw_hidetoc', null, { + expires: 30, + path: '/' + } ); + } else { + $tocList.slideUp( 'fast' ); + $tocToggleLink.text( mw.msg( 'showtoc' ) ); + $toc.addClass( 'tochidden' ); + $.cookie( 'mw_hidetoc', '1', { + expires: 30, + path: '/' + } ); + } + } + + // Only add it if there is a complete TOC and it doesn't + // have a toggle added already + if ( $toc.length && $tocTitle.length && $tocList.length && !$tocToggleLink.length ) { + hideToc = $.cookie( 'mw_hidetoc' ) === '1'; + + $tocToggleLink = $( '' ) + .text( hideToc ? mw.msg( 'showtoc' ) : mw.msg( 'hidetoc' ) ) + .click( function ( e ) { + e.preventDefault(); + toggleToc(); + } ); + + $tocTitle.append( + $tocToggleLink + .wrap( '' ) + .parent() + .prepend( ' [' ) + .append( '] ' ) + ); + + if ( hideToc ) { + $tocList.hide(); + $toc.addClass( 'tochidden' ); + } + } + } ); + +}( mediaWiki, jQuery ) ); -- cgit v1.2.3-54-g00ecf