diff options
Diffstat (limited to 'www/wiki/extensions/Translate/resources/js/ext.translate.navitoggle.js')
-rw-r--r-- | www/wiki/extensions/Translate/resources/js/ext.translate.navitoggle.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/www/wiki/extensions/Translate/resources/js/ext.translate.navitoggle.js b/www/wiki/extensions/Translate/resources/js/ext.translate.navitoggle.js new file mode 100644 index 00000000..dadaee7c --- /dev/null +++ b/www/wiki/extensions/Translate/resources/js/ext.translate.navitoggle.js @@ -0,0 +1,41 @@ +/*! + * Introduces a toggle icon than can be used to hide navigation menu in vector + * @author Niklas Laxström + * @license GPL-2.0-or-later + */ +( function () { + 'use strict'; + + var $body = $( 'body' ); + + if ( $body.width() < 1000 || mw.storage.get( 'translate-navitoggle' ) === '1' ) { + $body.addClass( 'tux-navi-collapsed' ); + } + + $( function () { + var $miniLogo, $toggle, rtl, delim; + + rtl = $body.hasClass( 'rtl' ); + delim = rtl ? + $( '#mw-head-base' ).css( 'margin-right' ) : + $( '#mw-head-base' ).css( 'margin-left' ); + + $miniLogo = $( '#p-logo' ) + .clone() + .removeAttr( 'id' ) + .addClass( 'tux-navi-minilogo' ); + + $toggle = $( '<div>' ) + .addClass( 'tux-navitoggle' ) + .css( rtl ? 'right' : 'left', delim ) + .click( function () { + $body.toggleClass( 'tux-navi-collapsed' ); + mw.storage.set( + 'translate-navitoggle', + String( Number( $body.hasClass( 'tux-navi-collapsed' ) ) ) + ); + } ); + + $body.append( $miniLogo, $toggle ); + } ); +}() ); |