User:Enterprisey/multi-lock-helper.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.
$( function() {
if( mw.config.get( "wgPageName" ) === "Steward_requests/Global" ) {
var lockHeadlines = document.querySelectorAll( "h3 > span[id^=Global_lock]" );
var currHeadline, listItems, wpTarget;
for( var i = 0, numHeadlines = lockHeadlines.length; i < numHeadlines; i++ ) {
try {
currHeadline = lockHeadlines[i];
listItems = currHeadline.parentNode.nextElementSibling.nextElementSibling.children;
for( var j = 0, wpTarget = []; j < listItems.length; j++ ) {
wpTarget.push( encodeURIComponent( listItems[j].children[0].children[0].textContent ) );
}
wpTarget = wpTarget.join( "%0A" );
currHeadline.nextSibling.removeChild( currHeadline.nextSibling.lastElementChild );
currHeadline.nextSibling.innerHTML += '<span class="mw-editsection-divider"> | </span><a href="https://meta.wikimedia.org/wiki/Special:MultiLock?wpTarget=' + wpTarget + '">lock all</a><span class="mw-editsection-bracket">]</span>';
} catch ( error ) {console.log(error);}
}
}
} );