diff options
Diffstat (limited to 'www/wiki/resources/src/mediawiki/page/ready.js')
-rw-r--r-- | www/wiki/resources/src/mediawiki/page/ready.js | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/www/wiki/resources/src/mediawiki/page/ready.js b/www/wiki/resources/src/mediawiki/page/ready.js new file mode 100644 index 00000000..e1476641 --- /dev/null +++ b/www/wiki/resources/src/mediawiki/page/ready.js @@ -0,0 +1,58 @@ +( function ( mw, $ ) { + mw.hook( 'wikipage.content' ).add( function ( $content ) { + var $sortable, $collapsible; + + $collapsible = $content.find( '.mw-collapsible' ); + if ( $collapsible.length ) { + // Preloaded by Skin::getDefaultModules() + mw.loader.using( 'jquery.makeCollapsible', function () { + $collapsible.makeCollapsible(); + } ); + } + + $sortable = $content.find( 'table.sortable' ); + if ( $sortable.length ) { + // Preloaded by Skin::getDefaultModules() + mw.loader.using( 'jquery.tablesorter', function () { + $sortable.tablesorter(); + } ); + } + + // Run jquery.checkboxShiftClick + $content.find( 'input[type="checkbox"]:not(.noshiftselect)' ).checkboxShiftClick(); + } ); + + // Things outside the wikipage content + $( function () { + var $nodes; + + // Add accesskey hints to the tooltips + $( '[accesskey]' ).updateTooltipAccessKeys(); + + $nodes = $( '.catlinks[data-mw="interface"]' ); + if ( $nodes.length ) { + /** + * Fired when categories are being added to the DOM + * + * It is encouraged to fire it before the main DOM is changed (when $content + * is still detached). However, this order is not defined either way, so you + * should only rely on $content itself. + * + * This includes the ready event on a page load (including post-edit loads) + * and when content has been previewed with LivePreview. + * + * @event wikipage_categories + * @member mw.hook + * @param {jQuery} $content The most appropriate element containing the content, + * such as .catlinks + */ + mw.hook( 'wikipage.categories' ).fire( $nodes ); + } + + $( '#t-print a' ).click( function ( e ) { + window.print(); + e.preventDefault(); + } ); + } ); + +}( mediaWiki, jQuery ) ); |