User:Alyxia/monobook.js
Jump to navigation
Jump to search
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)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
// Sidebar modification {{{
function ModifySidebar(action, section, name, link) {
try {
let target;
switch (section) {
case 'languages':
target = 'p-lang';
break;
case 'toolbox':
target = 'p-tb';
break;
case 'navigation':
target = 'p-navigation';
break;
default:
target = 'p-' + section;
break;
}
if (action == 'add') {
const node = document
.getElementById(target)
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
const aNode = document.createElement('a');
const liNode = document.createElement('li');
aNode.appendChild(document.createTextNode(name));
aNode.setAttribute('href', link);
liNode.appendChild(aNode);
liNode.className = 'plainlinks';
node.appendChild(liNode);
}
if (action == 'remove') {
const list = document
.getElementById(target)
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
const listelements = list.getElementsByTagName('li');
for (const i = 0; i < listelements.length; i++) {
if (
listelements[i].getElementsByTagName('a')[0].innerHTML == name ||
listelements[i].getElementsByTagName('a')[0].href == link
) {
list.removeChild(listelements[i]);
}
}
}
} catch (e) {
// Probably not the best course of action to ignore error handling... but
// whatever.
console.error('Something went horribly wrong when trying to modify the sidebar!\n', e);
return;
}
}
function CustomizeModificationsOfSidebar() {
ModifySidebar('add', 'toolbox', 'AllPages', 'https://wiki.fyralabs.com/Special:AllPages');
}
jQuery(CustomizeModificationsOfSidebar);
// }}}