User:Ofus/hide-vector-sidebar.js

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: hold down Shift + Alt while clicking Reload, Chrome: hold down Shift while clicking Reload.
// import from User:PleaseStand/hide-vector-sidebar.js

/* hide-vector-sidebar.js: Adds a button to toggle visibility of the Vector sidebar.
   Written by PleaseStand. Public domain; all copyright claims waived as described
   in http://en.wikipedia.org/wiki/Template:PD-self */
 
/*
To hide/show the sidebar:
Firefox: alt-shift-a
Chrome: alt-a
*/

( function ( mw, $ ) {
	var sidebarSwitch;

	function sidebarHide() {
		document.getElementById( 'mw-panel' ).style.visibility = 'hidden';
		document.getElementById( 'mw-head-base' ).style.marginLeft = '0';
		document.getElementById( 'content' ).style.marginLeft = '0';
		document.getElementById( 'left-navigation' ).style.marginLeft = '0';
		document.getElementById( 'footer' ).style.marginLeft = '0';
		if ( sidebarSwitch ) {
			sidebarSwitch.parentNode.removeChild(sidebarSwitch);
		}
		sidebarSwitch = mw.util.addPortletLink( 'p-cactions', '#', 'Show sidebar', 'ca-sidebar', 'Show the navigation links', 'a' );
		$( sidebarSwitch ).click( function ( e ) {
			e.preventDefault();
			sidebarShow();
		} );
	}
	
	function sidebarShow() {
		document.getElementById( 'mw-panel' ).style.visibility = '';
		document.getElementById( 'mw-head-base' ).style.marginLeft = '';
		document.getElementById( 'content' ).style.marginLeft = '';
		document.getElementById( 'left-navigation' ).style.marginLeft = '';
		document.getElementById( 'footer' ).style.marginLeft = '';
		if ( sidebarSwitch ) {
			sidebarSwitch.parentNode.removeChild(sidebarSwitch);
		}
		sidebarSwitch = mw.util.addPortletLink( 'p-cactions', '#', 'Hide sidebar', 'ca-sidebar', 'Hide the navigation links', 'a' );
		$( sidebarSwitch ).click( function ( e ) {
			e.preventDefault();
			sidebarHide();
		} );
	}
	
	// Only activate on Vector skin
	if ( mw.config.get( 'skin' ) === 'vector' ) {
		$.when($.ready,mw.loader.using('mediawiki.util')).then(function(){
			// Change this if you want to show the sidebar by default
			sidebarShow();
		} );
	}
	
}( mediaWiki, jQuery ) );