User:RheingoldRiver/common.js

// Disable triggering of new browser tab when clicking URL links that point to internal wiki addresses (purge, edit, etc) $('a[href*="gamepedia.com"]').removeAttr('target').removeClass('external text');

/* add edit buttons for recent changes, categories, contributions, and search */

$(function {	var $changeList = $('.mw-changeslist');	var $catList = $('.mw-category-generated');	var $contribList = $('ul.mw-contributions-list');	var $searchList = $('.searchresults');	if (!$changeList.length && !$catList.length && !$contribList.length && !$searchList.length) {		return;	}	function addTagMarker(obj) {		var classes = $(obj).attr('class');		var re = /.*mw-tag-marker-([^\s]*)/g;		var thisClass = re.exec(classes)[1];		if (thisClass) {			var sep = (window.location.href.indexOf("?") === -1) ? "?" : "&";			$('')			.addClass('tag-filter-link')			.attr({ href: window.location.href + sep + 'tagfilter=' + thisClass, title: 'Filter to this tag' })			.css({'margin-left':'.5em','background-color':'#0FE40F'})			.text('...')			.insertAfter(obj);		}	}	$changeList.find('.mw-tag-marker').each(function{ addTagMarker(this); });	$contribList.find('.mw-tag-marker').each(function{ addTagMarker(this); });	function addEditlink(elem, target) {		$('').addClass('custom-editlink').attr({ href : mw.util.getUrl(target, { action : 'edit' }), title : 'Edit this page' }).text('✎').insertAfter(elem);	}	function fixProfileLink(elem, title) {		if (! title.match(/^User/)) return;		var oldlink = $(elem).attr('href');		var newlink = oldlink + '?profile=no';		$(elem).attr('href', newlink);	}	mw.loader.using('mediawiki.util').then(function { $changeList.find('.mw-title').each(function {			var title_obj = $(this).find('.mw-changeslist-title');			if (title_obj) {				var title = title_obj.attr('title');				addEditlink(this, title);				fixProfileLink(title_obj, title);			}		}); $catList.find('.mw-content-ltr ul li a').each(function {			var title = $(this).text;			if (title) {				title = $(this).hasClass("CategoryTreeLabel") ? "Category:" + title : title;				addEditlink(this, title);			}		}); $contribList.find('a.mw-contributions-title').each(function {			var title = $(this).attr('title');			fixProfileLink(this, title);			addEditlink(this, title);		}); $searchList.find('.mw-search-result-heading').each(function {			var title_obj = $(this).find('a');			if (title_obj) {				var title = title_obj.attr('title');				addEditlink(title_obj, title);				fixProfileLink(title_obj, title);			}		}); }); });

/* page values hotkey */ $.when(mw.loader.using('mediawiki.util'), $.ready).then(function { 	mw.util.addPortletLink('p-tb', mw.config.get('wgServer') + mw.config.get('wgArticlePath').replace("$1", "index.php?title="+ encodeURI(mw.config.get('wgPageName')) + '&action=pagevalues'), 'Page Values 2', 'pv2','page values','1','#t-cargopagevalueslink'); });

$(function {	wgNamespace = mw.config.get('wgCanonicalNamespace');	if (wgNamespace != 'Category') return;	$(mw.util.addPortletLink('p-cactions', 'javascript:;', '!Copy Members', 'ca-copy-cat-members', 'Copy Category Members', null, '#ca-move-to-user')).click(function { a = new mw.Api; a.get({			action : 'query',			list : 'categorymembers',			cmtitle : mw.config.get('wgPageName'),			cmlimit : 'max'		}).then(function(data) {			tbl = [];			for (page in data.query.categorymembers) {				tbl.push(data.query.categorymembers[page].title);			}			var str = tbl.join('\n');			var el = document.createElement('textarea');			el.value = str;			el.setAttribute('readonly', '');			$(el).insertAfter('#contentSub');			el.select;		}); }); });

/////////////////////////////////////////////////