User:BryanDavis/common.js

From Wikitech

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.
/* Load global js & css from meta */
mw.loader.load('https://meta.wikimedia.org/w/index.php?title=User:BDavis_(WMF)/global.js&action=raw&ctype=text/javascript');
mw.loader.load('https://meta.wikimedia.org/w/index.php?title=User:BDavis_(WMF)/global.css&action=raw&ctype=text/css', 'text/css' );

/* https://en.wikipedia.org/w/index.php?title=User:Writ_Keeper/Scripts/massRollback.js&oldid=794876634 */
function rollbackEverythingWKMR(editSummary) {
	if (editSummary === null) {
		return false;
	}
	var userName = mw.config.get("wgRelevantUserName");
	var titleRegex = /title=([^&]+)/;
	mw.loader.using( 'mediawiki.api.rollback' ).done( function(){
		var api = new mw.Api();
		$("a[href*='action=rollback']").each(function(ind, el){
			var params = {};
			if ( editSummary != '' ) {
				params.summary = editSummary;
			}
			api.rollback( decodeURIComponent(titleRegex.exec(el.href)[1]), userName, params).done(
				function(){
					$(el).after("reverted");
					$(el).remove();
			} );
		} );
	} );
	return false;
}
$(document).ready(function(){
	if(mw.config.get("wgCanonicalSpecialPageName") == "Contributions" && $("span.mw-rollback-link").length > 0){
		mw.loader.using("mediawiki.util").done( function(){
			mw.util.addPortletLink('p-cactions', '#', "rollback all", "ca-rollbackeverything", "rollback all edits displayed here");
			$("#ca-rollbackeverything").click( function(event){
				event.preventDefault();
				mw.loader.load( [ 'mediawiki.api.rollback' ] ); //start loading, while the user is in the prompt
				return rollbackEverythingWKMR(prompt("Enter an edit summary, or leave blank to use the default (or hit Cancel to cancel the rollback entirely)"));
			});
		});
	}
});