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 */

( 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

sidebarHide();

} );

}

}( mediaWiki, jQuery ) );