SMITE Esports Wiki
Advertisement

CSS and Javascript changes must comply with the wiki design rules.


Note: After saving, 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: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Clear the cache in Tools → Preferences
$( function () { 
	$(mw.util.addPortletLink('p-cactions', 'javascript:;', '!Patrol All', 'ca-patrol-all', 'Patrol & accept all revisions of this page')).click(function() {
		clearDisplayColor();		
		if (!confirm("Patrol all revisions?")) {
			return;
		}

		var ns = mw.config.get("wgCanonicalNamespace");
		if (ns != "") {
			ns = ns + ":"
		}
		var title = mw.config.get("wgTitle");
		var fulltitle = ns + title;
		var revIDs = [];
		var rev = 0;
		var a = new mw.Api();
				
		function getRevisions() {
			a.get({action:"query",prop:"revisions",titles:fulltitle,rvprop:"ids",rvlimit:"50"}).done(function (data){
				for (p in data.query.pages) {
					page = data.query.pages[p]
					for (r in page.revisions) {
						revIDs.push(page.revisions[r].revid)
					}
				}
				patrolAndAccept();
				return;
			}).fail(function (data){
				console.log("Failed to get revisions");
				checkTarget();
				return;
			});
		}
		
		function patrolAndAccept() {
			if (rev == revIDs.length) {
				displayColor("gadget-action-success");
				console.log("Done!");
				return;
			}
			a.postWithToken("patrol",{action:"patrol",revid:revIDs[rev]}).done(function (data){
				a.postWithToken("csrf",{action:"review",revid:revIDs[rev]}).done(function (data){
					rev++;
					patrolAndAccept();
					return;
				}).fail(function (code, data){
					console.log("Failed to accept revision " + revIDs[rev] + ". Reason: " + code);
					rev++;
					patrolAndAccept();
					return;
				});
			}).fail(function (code, data){
				console.log("Failed to patrol revision " + revIDs[rev] + "; moving on without attempting to accept. Reason: " + code);
				rev++;
				patrolAndAccept();
				return;
			});
		}
		getRevisions();
	});
});
Advertisement