User:Guycn2/ToggleSidebar.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/*
Collapse/expand sidebar for 2010 vector
Written by: [[User:Guycn2]]
*/
mw.loader.using("mediawiki.util", function() {
if (mw.config.get("skin") !== "vector") return; // Only for old vector
const lang = mw.config.get("wgUserLanguage");
const isRTL = $("body.rtl").length;
let originalMargin;
if (isRTL) {
originalMargin = $(".mw-body").css("margin-right");
} else {
originalMargin = $(".mw-body").css("margin-left");
}
function toggleSidebar(e) {
if (typeof e === "object") {
e.preventDefault();
}
$("#mw-panel").toggle();
let newMargin;
if (isRTL) {
newMargin =
$(".mw-body").css("margin-right") === "0px"
? originalMargin
: "0";
} else {
newMargin =
$(".mw-body").css("margin-left") === "0px"
? originalMargin
: "0";
}
const selectors =
`.mw-body,
#mw-head-base,
#left-navigation,
#mw-data-after-content,
.mw-footer`;
if (isRTL) {
mw.util.addCSS(
`${selectors} {
margin-right: ${newMargin};
}`
);
} else {
mw.util.addCSS(
`${selectors} {
margin-left: ${newMargin};
}`
);
}
}
mw.util.addPortletLink(
"p-personal",
"#",
lang === "he" ? "תפריט צד" : "Toggle sidebar",
"pt-toggle_sidebar",
lang === "he"
? "הצגה או הסתרה של תפריט הצד"
: "Expand or collapse sidebar",
"",
$("#pt-darkmode").length === 0 ? "#pt-watchlist" : "#pt-darkmode"
).onclick = toggleSidebar;
if (window.orientation !== undefined) {
// On mobile devices, collapse sidebar by default when page loads
$(document).ready(toggleSidebar);
}
});