User:Offend/UserHighlighter.js

var ecdata, mvdata, tpdata, addata, budata, cudata, stdata, ovdata; $.when(	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Amorymeltzer/crathighlighter.js/bureaucrat.json', function(data){ budata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Amorymeltzer/crathighlighter.js/checkuser.json', function(data){ cudata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Amorymeltzer/crathighlighter.js/steward.json', function(data){ stdata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Amorymeltzer/crathighlighter.js/oversight.json', function(data){ ovdata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Bellezzasolo Bot/userhighlighter.js/excon.js', function(data){ ecdata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Bellezzasolo Bot/userhighlighter.js/pgmvr.js', function(data){ mvdata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Bellezzasolo Bot/userhighlighter.js/temop.js', function(data){ tpdata = data; }),	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Amalthea_(bot)/userhighlighter.js/sysop.js', function(data){ addata = data; })	).then(function {	ADMINHIGHLIGHT_EXTLINKS = window.ADMINHIGHLIGHT_EXTLINKS || false;	ADMINHIGHLIGHT_NAMESPACES = [-1,2,3];	mw.loader.using(['mediawiki.util','mediawiki.Uri', 'mediawiki.Title'], function { mw.util.addCSS(".userhighlighter_check.userhighlighter_check {background-color: #bbc4f7 !important}"); mw.util.addCSS(".userhighlighter_overs.userhighlighter_overs {background-color: #91f7bf !important}"); mw.util.addCSS(".userhighlighter_bureu.userhighlighter_bureu {background-color: #c0a0ff !important}"); mw.util.addCSS(".userhighlighter_sysop.userhighlighter_sysop {background-color: #96e8ff !important}"); mw.util.addCSS(".userhighlighter_stewd.userhighlighter_stewd {background-color: #ffb2d2 !important}"); mw.util.addCSS(".userhighlighter_temop.userhighlighter_temop {background-color: #cecece !important}"); mw.util.addCSS(".userhighlighter_pgmvr.userhighlighter_pgmvr {background-color: #d789ff !important}"); mw.util.addCSS(".userhighlighter_excon.userhighlighter_excon {background-color: #87ff7a !important}"); $('#article a, #bodyContent a, #mw_contentholder a').each(function(index,linkraw){			try {				var link = $(linkraw);				var url = link.attr('href');				if (!url || url.charAt(0) === '#') return; // Skip  elements that aren't actually links; skip anchors				if (url.lastIndexOf("http://", 0) != 0 && url.lastIndexOf("https://", 0) != 0 && url.lastIndexOf("/", 0) != 0) return; //require http(s) links, avoid "javascript:..." etc. which mw.Uri does not support				var uri = new mw.Uri(url);				if (!ADMINHIGHLIGHT_EXTLINKS && !$.isEmptyObject(uri.query)) return; // Skip links with query strings if highlighting external links is disabled				if (uri.host == 'en.wikipedia.org') {					var mwtitle = new mw.Title(mw.util.getParamValue('title',url) || decodeURIComponent(uri.path.slice(6))); // Try to get the title parameter of URL; if not available, remove '/wiki/' and use that					if ($.inArray(mwtitle.getNamespaceId, ADMINHIGHLIGHT_NAMESPACES)>=0) { var user = mwtitle.getMain.replace(/_/g," "); if (mwtitle.getNamespaceId === -1) user = user.replace('Contributions/',''); // For special page "Contributions/ " if (cudata[user] == 1) { link.attr("class", "userhighlighter_check"); // Override the above color by using `a.userhighlighter_sysop.userhighlighter_sysop {background-color: COLOR !important}` }						else if(ovdata[user] == 1) { link.attr("class", "userhighlighter_overs"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}` }						else if(budata[user] == 1) { link.attr("class", "userhighlighter_bureu"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}` }						else if(addata[user] == 1) { link.attr("class", "userhighlighter_sysop"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}` }						else if(stdata[user] == 1) { link.attr("class", "userhighlighter_stewd"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}` }						else if(tpdata[user] == 1) { link.attr("class", "userhighlighter_temop"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}` }						else if(mvdata[user] == 1) { link.attr("class", "userhighlighter_pgmvr"); // Override the above color by using `a.userhighlighter_pgmvr.userhighlighter_pgmvr {background-color: COLOR !important}` }						else if(ecdata[user] == 1) { link.attr("class", "userhighlighter_excon"); // Override the above color by using `a.userhighlighter_excon.userhighlighter_excon {background-color: COLOR !important}` }					}				}			} catch (e) { // Sometimes we will run into unparsable links, so just log these and move on				window.console && console.error('Admin highlighter recoverable error',e.message); }		});	});	}); }(jQuery, mediaWiki));
 * mw.hook('wikipage.content').add(function($, mw){