From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.

//<nowiki>

/**

 * User highlighter 3.0

 * ---------------------

 * A jQuery/mediawiki-heavy rewrite of [[User:Amalthea/userhighlighter.js]]

 * 

 * This script highlights links to admins' userpages or talkpages in bodyContent

 * (that is, everything but the tabs, personal links at the top of the screen and sidebar)

 * by giving them a gold background. It also colors links to userpages of users with lower

 * and higher-ranked permissions.

 *

 * The direct source for this script is a combination of Bellezzasolo's (adds

 * intermediate-level groups) and Amorymeltzer's (adds advanced-level groups) 

 * versions of the script. You may be interested in

 * [[User:Chlod/Scripts/UserHighlighter.js]], which adds a tooltip showing 

 * a user's groups. However, I continue to use this version because Navigation

 * Popups already covers this functionality. This script has been forked many 

 * times; please see my documentation page for a full chart of these forks.

 * 

 * TODO: Rollback

 *

 * @author Ais523

 * @author Amalthea

 * @author Theopolisme

 * @author Bellezzasolo

 * @author Amorymeltzer

 * @author Pythoncoder

 */

(function($, mw){

mw.hook('wikipage.content').add(function(){

	var ecdata, pcdata, mvdata, tpdata, addata;

	$.when(

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/arbcom.json', function(data){

		acdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/bureaucrat.json', function(data){

		crdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/oversight.json', function(data){

		osdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/checkuser.json', function(data){

		cudata = 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/pcusr.js', function(data){

		pcdata = 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:AmoryBot/crathighlighter.js/sysop.json', function(data){

		addata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Bellezzasolo Bot/userhighlighter.js/ptusr.js', function(data){

		ptdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/interface-admin.json', function(data){

		iadata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/steward.json', function(data){

		swdata = 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("[class~=userhighlighter_excon] {background-color: #99f}");

		mw.util.addCSS("[class~=userhighlighter_pcusr] {background-color: #ddd}");

		mw.util.addCSS("[class~=userhighlighter_ptusr] {background-color: #9c9}");

		mw.util.addCSS("[class~=userhighlighter_pgmvr] {background-color: #bf9}");

		mw.util.addCSS("[class~=userhighlighter_temop] {background-color: #f9f}");

		mw.util.addCSS("[class~=userhighlighter_sysop] {background-color: #9ff}");

		mw.util.addCSS("[class~=userhighlighter_checkuser][class~=userhighlighter_sysop] {background-color: #9cf}");

		mw.util.addCSS("[class~=userhighlighter_oversight][class~=userhighlighter_sysop] {background-color: #999}");

		mw.util.addCSS("[class~=userhighlighter_arbcom][class~=userhighlighter_sysop] {background-color: #f99}");

		mw.util.addCSS("[class~=userhighlighter_interface-admin][class~=userhighlighter_sysop] {background-color: #ff9}");

		mw.util.addCSS("[class~=userhighlighter_bureaucrat][class~=userhighlighter_sysop] {background-color: #fb9}");

		mw.util.addCSS("[class~=userhighlighter_steward] {background-color: #9cc}");

		mw.util.addCSS("[class~=userhighlighter_jimbo][class~=userhighlighter_sysop] {background-color: #fd9}");

		$('#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 <a> 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/<username>"

						if (mwtitle.getNamespaceId() === -1) user = user.replace('Contribs/',''); // The Contribs abbreviation too

						

						if (swdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_steward');

						}

						if(crdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_bureaucrat');

						}

						if(iadatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_interface-admin');

						}

						if(acdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_arbcom');

						}

						if(osdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_oversight');

						}

						if(cudatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_checkuser');

						}

						if (addatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_sysop');

						}

						if(tpdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_temop"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}`

						}

						if(mvdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_pgmvr"); // Override the above color by using `a.userhighlighter_pgmvr.userhighlighter_pgmvr {background-color: COLOR !important}`

						}

						if(ptdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_ptusr"); // Override the above color by using `a.userhighlighter_ptusr.userhighlighter_ptusr {background-color: COLOR !important}`

						}

						if(pcdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_pcusr"); // Override the above color by using `a.userhighlighter_pcusr.userhighlighter_pcusr {background-color: COLOR !important}`

						}

						if(ecdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_excon"); // Override the above color by using `a.userhighlighter_excon.userhighlighter_excon {background-color: COLOR !important}`

						}

						if(user == 'Jimbo Wales') {

							link.addClass(link.attr('class') + " userhighlighter_jimbo"); // Override the above color by using `a.userhighlighter_jimbo.userhighlighter_jimbo {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));

//</nowiki>
From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.

//<nowiki>

/**

 * User highlighter 3.0

 * ---------------------

 * A jQuery/mediawiki-heavy rewrite of [[User:Amalthea/userhighlighter.js]]

 * 

 * This script highlights links to admins' userpages or talkpages in bodyContent

 * (that is, everything but the tabs, personal links at the top of the screen and sidebar)

 * by giving them a gold background. It also colors links to userpages of users with lower

 * and higher-ranked permissions.

 *

 * The direct source for this script is a combination of Bellezzasolo's (adds

 * intermediate-level groups) and Amorymeltzer's (adds advanced-level groups) 

 * versions of the script. You may be interested in

 * [[User:Chlod/Scripts/UserHighlighter.js]], which adds a tooltip showing 

 * a user's groups. However, I continue to use this version because Navigation

 * Popups already covers this functionality. This script has been forked many 

 * times; please see my documentation page for a full chart of these forks.

 * 

 * TODO: Rollback

 *

 * @author Ais523

 * @author Amalthea

 * @author Theopolisme

 * @author Bellezzasolo

 * @author Amorymeltzer

 * @author Pythoncoder

 */

(function($, mw){

mw.hook('wikipage.content').add(function(){

	var ecdata, pcdata, mvdata, tpdata, addata;

	$.when(

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/arbcom.json', function(data){

		acdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/bureaucrat.json', function(data){

		crdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/oversight.json', function(data){

		osdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/checkuser.json', function(data){

		cudata = 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/pcusr.js', function(data){

		pcdata = 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:AmoryBot/crathighlighter.js/sysop.json', function(data){

		addata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:Bellezzasolo Bot/userhighlighter.js/ptusr.js', function(data){

		ptdata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/interface-admin.json', function(data){

		iadata = data;

	}),

	$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=User:AmoryBot/crathighlighter.js/steward.json', function(data){

		swdata = 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("[class~=userhighlighter_excon] {background-color: #99f}");

		mw.util.addCSS("[class~=userhighlighter_pcusr] {background-color: #ddd}");

		mw.util.addCSS("[class~=userhighlighter_ptusr] {background-color: #9c9}");

		mw.util.addCSS("[class~=userhighlighter_pgmvr] {background-color: #bf9}");

		mw.util.addCSS("[class~=userhighlighter_temop] {background-color: #f9f}");

		mw.util.addCSS("[class~=userhighlighter_sysop] {background-color: #9ff}");

		mw.util.addCSS("[class~=userhighlighter_checkuser][class~=userhighlighter_sysop] {background-color: #9cf}");

		mw.util.addCSS("[class~=userhighlighter_oversight][class~=userhighlighter_sysop] {background-color: #999}");

		mw.util.addCSS("[class~=userhighlighter_arbcom][class~=userhighlighter_sysop] {background-color: #f99}");

		mw.util.addCSS("[class~=userhighlighter_interface-admin][class~=userhighlighter_sysop] {background-color: #ff9}");

		mw.util.addCSS("[class~=userhighlighter_bureaucrat][class~=userhighlighter_sysop] {background-color: #fb9}");

		mw.util.addCSS("[class~=userhighlighter_steward] {background-color: #9cc}");

		mw.util.addCSS("[class~=userhighlighter_jimbo][class~=userhighlighter_sysop] {background-color: #fd9}");

		$('#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 <a> 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/<username>"

						if (mwtitle.getNamespaceId() === -1) user = user.replace('Contribs/',''); // The Contribs abbreviation too

						

						if (swdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_steward');

						}

						if(crdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_bureaucrat');

						}

						if(iadatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_interface-admin');

						}

						if(acdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_arbcom');

						}

						if(osdatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_oversight');

						}

						if(cudatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_checkuser');

						}

						if (addatauser == 1) {

							link.addClass(link.attr('class') + ' userhighlighter_sysop');

						}

						if(tpdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_temop"); // Override the above color by using `a.userhighlighter_temop.userhighlighter_temop {background-color: COLOR !important}`

						}

						if(mvdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_pgmvr"); // Override the above color by using `a.userhighlighter_pgmvr.userhighlighter_pgmvr {background-color: COLOR !important}`

						}

						if(ptdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_ptusr"); // Override the above color by using `a.userhighlighter_ptusr.userhighlighter_ptusr {background-color: COLOR !important}`

						}

						if(pcdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_pcusr"); // Override the above color by using `a.userhighlighter_pcusr.userhighlighter_pcusr {background-color: COLOR !important}`

						}

						if(ecdatauser == 1) {

							link.addClass(link.attr('class') + " userhighlighter_excon"); // Override the above color by using `a.userhighlighter_excon.userhighlighter_excon {background-color: COLOR !important}`

						}

						if(user == 'Jimbo Wales') {

							link.addClass(link.attr('class') + " userhighlighter_jimbo"); // Override the above color by using `a.userhighlighter_jimbo.userhighlighter_jimbo {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));

//</nowiki>

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook