User:MisterSynergy/menu.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)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
$.when($.ready).then(function(){
if(mw.config.get('skin') !== 'vector-2022') return;
// add links to the personal menu
const target = '#p-personal > .vector-menu-content';
const links = {
'metawiki' : [
[
{
'link' : '//meta.wikimedia.org/wiki/Special:Watchlist',
'title' : 'meta'
},
{
'link' : '//meta.wikimedia.org/wiki/Special:GlobalWatchlist',
'title' : 'gw'
}
]
],
'mediawiki' : [
[
{
'link' : '//www.mediawiki.org/wiki/Special:Watchlist',
'title' : 'mw'
}
]
],
'wikidatawiki' : [
[
{
'link' : '//www.wikidata.org/wiki/Special:Watchlist',
'accesskey' : 'ä',
'title' : 'wd'
}
],
[
{
'link' : '//www.wikidata.org/wiki/Wikidata:Project_chat',
'title' : 'PC'
},
{
'link' : '//www.wikidata.org/wiki/Wikidata:Forum',
'title' : 'Forum'
}
],
[
{
'link' : '//www.wikidata.org/wiki/Wikidata:WikiProject_Rowing',
'title' : 'ROW'
},
{
'link' : '//www.wikidata.org/wiki/Wikidata:WikiProject_Olympics',
'title' : 'OLY'
},
{
'link' : '//www.wikidata.org/wiki/Wikidata:WikiProject_Sports',
'title' : 'Sports'
},
{
'link' : '//www.wikidata.org/wiki/User:MisterSynergy/header',
'title' : 'h'
}
],
[
{
'link' : '//www.wikidata.org/wiki/Wikidata:WikiProject_Counter-Vandalism',
'title' : 'CVN'
},
{
'link' : '//wdpd.toolforge.org/',
'title' : 'wdpd'
},
{
'link' : '//www.wikidata.org/w/index.php?title=Special:RecentChanges&days=30&from=&limit=500&hidenondamaging=1',
'title' : 'RC1'
},
{
'link' : '//pltools.toolforge.org/rech/',
'title' : 'RC2'
}
],
[
{
'link' : '//www.wikidata.org/wiki/Wikidata:Administrators\'_noticeboard',
'title' : 'AN'
},
{
'link' : '//www.wikidata.org/wiki/Wikidata:Requests_for_deletions',
'title' : 'RfD'
},
{
'link' : '//www.wikidata.org/wiki/User:MisterSynergy/sysop',
'title' : 's'
},
{
'link' : '//www.wikidata.org/wiki/User:MisterSynergy/sysop/items_for_deletion',
'title' : 'del'
},
{
'link' : '//www.wikidata.org/wiki/Category:Wikidata_protected_edit_requests',
'title' : 'ER'
}
],
[
{
'link' : '//www.wikidata.org/wiki/User:MsynBot',
'title' : 'msyn'
},
{
'link' : '//www.wikidata.org/wiki/User:MsynABot',
'title' : 'msyna'
},
{
'link' : '//www.wikidata.org/wiki/User:DeltaBot',
'title' : 'delta'
},
{
'link' : '//www.wikidata.org/wiki/User:PLbot',
'title' : 'pl'
}
],
[
{
'link' : '//query.wikidata.org/',
'title' : 'query'
}
]
],
'commonswiki' : [
[
{
'link' : '//commons.wikimedia.org/wiki/Special:Watchlist',
'title' : 'com'
},
{
'link' : '//commons.wikimedia.org/wiki/User:MisterSynergy/WikiProject_Rowing',
'title' : 'ROW'
},
{
'link' : '//commons.wikimedia.org/wiki/Category:Rowing',
'title' : 'cat:ROW'
}
]
],
'dewiki' : [
[
{
'link' : '//de.wikipedia.org/wiki/Spezial:Beobachtungsliste',
'accesskey' : 'ö',
'title' : 'de'
},
{
'link' : '//de.wikipedia.org/wiki/Benutzer:MisterSynergy/Wünsche',
'title' : 'W'
},
{
'link' : '//de.wikipedia.org/wiki/Wikipedia:WikiProjekt_Rudern',
'title' : 'ROW'
}
],
[
{
'link' : '//de.wikipedia.org/wiki/Wikipedia_Diskussion:Kurier',
'title' : 'WD:K'
},
{
'link' : '//de.wikipedia.org/wiki/Wikipedia:Fragen_zur_Wikipedia',
'title' : 'WP:FZW'
}
]
],
'enwiki' : [
[
{
'link' : '//en.wikipedia.org/wiki/Special:Watchlist',
'accesskey' : 'ü',
'title' : 'en'
},
{
'link' : '//en.wikipedia.org/wiki/Wikipedia:WikiProject_Rowing',
'title' : 'ROW'
}
]
],
};
const main_ul = $(document.createElement('ul')).attr('id', 'pt-mistersynergy-list').attr('class', 'vector-menu-content-list');
$.each(links, function(wiki, link_list) {
let list_item = $(document.createElement('li')).attr('class', 'pt-mistersynergy pt-mistersynergy-'+wiki);
const sublists = [];
$.each(link_list, function(idx, link_sublist) {
const sublist_links = [];
$.each(link_sublist, function(idx2, link_dct) {
let a = $(document.createElement('a')).attr('href', link_dct.link).attr('title', link_dct.title);
if('accesskey' in link_dct){
a.attr('accesskey', link_dct.accesskey);
}
a.text(link_dct.title);
sublist_links.push($(a).prop('outerHTML'));
});
sublists.push(sublist_links.join(' • '));
});
$(list_item).append(sublists.join('<br />'));
$(main_ul).append(list_item);
});
$(target).prepend(main_ul);
// add accesskey to left menu button (hamburger icon in the top left corner); access with "Shift + Alt + [ACCESSKEY]"
$('#mw-sidebar-button').attr('accesskey', 'ß')
});