MediaWiki:Common.js

/* Any JavaScript here will be loaded for all users on every page load. */

/* Fix media negative margin bug for wide galleries */ $('.gallerybox audio').each(function(i, obj) {	if ($(this).parent.css('margin-top') < '15px')		$(this).parent.css('margin', '15px auto'); });

/* Default Special:ReplaceText to not announce edits */ $(function {	if (mw.config.get('wgCanonicalSpecialPageName') === 'ReplaceText')		$('input[id="doAnnounce"]').prop('checked', false); });

/* Default Special:UserMerge to user deletion */ $(function {	if (mw.config.get('wgCanonicalSpecialPageName') === 'UserMerge') {		$('input[name="wpnewuser"]').val('Anonymous');		$('input[name="wpdelete"]').prop('checked', true);	} });

/* Remove mobile title tags on desktop main page */ $(function {	if (mw.config.get('wgTitle') === 'Main Page') {		$('div[id^="mf-"]').each(function(i, obj) { $(this).removeAttr('title'); });	} });

/* Add subpages toolbox link on user pages */ $(function {	var title = mw.config.get('wgTitle');	if (mw.config.get('wgCanonicalNamespace') === 'User' && !title.includes('/')) {		var subpagesLink = '/Special:PrefixIndex/User:' + title + '/';		mediaWiki.util.addPortletLink('p-tb', subpagesLink, 'User subpages', 't-subpages', 'Subpages of this page');	} });

/* Add autocollapse support to mw-collapsible */ function mwCollapsibleSetup($collapsibleContent) { var $element, autoCollapseThreshold = 2; $.each($collapsibleContent, function (index, element) {		$element = $(element);		if ($collapsibleContent.length >= autoCollapseThreshold && $element.hasClass('autocollapse'))			$element.data('mw-collapsible').collapse;	}); } mw.hook('wikipage.collapsibleContent').add(mwCollapsibleSetup);

/* Add a drop-down menu for Special:CheckUser reasons */ function checkUserOther(name) { if (name == 'Other') { var menu = document.getElementById('checkreason'); var field = ''; menu.outerHTML = field; } } $(function {	if (mw.config.get('wgCanonicalSpecialPageName') === 'CheckUser') {		var field = document.getElementById('checkreason');		var menu = 'Please select a reason... Routine new user check Suspected sockpuppet account Matching a vandal account Other ';		field.outerHTML = menu;	} });

/* Balance main page Shroom/MWE boxes and filler links */ $(function {	function mainPageMaintain {		var leftHeight = $('#featured').outerHeight(true) + $('#poll').outerHeight(true);		var rightHeight = $('#news').outerHeight(true) + $('#dyk').outerHeight(true);		var i, len; var divIds = ['shroom', 'mwe'];		for (i = 0, len = divIds.length; i < len; ++i) {			if (leftHeight < rightHeight) {				$('#' + divIds[i] + '-left').show;				$('#' + divIds[i] + '-right').hide;				leftHeight = leftHeight + $('#' + divIds[i] + '-left').outerHeight(true);			} else {				$('#' + divIds[i] + '-right').show;				$('#' + divIds[i] + '-left').hide;				rightHeight = rightHeight + $('#' + divIds[i] + '-right').outerHeight(true);			}		}		var heightDif; divIds = ['maintain', 'rc', 'random', 'faq', 'editing'];		for (i = 0, len = divIds.length; i < len; ++i) {			heightDif = Math.abs(leftHeight - rightHeight);			if (heightDif > 26) {				if ( leftHeight < rightHeight ) { $('#' + divIds[i] + '-left').show; $('#' + divIds[i] + '-right').hide; leftHeight = leftHeight + $('#' + divIds[i] + '-left').outerHeight(true); } else { $('#' + divIds[i] + '-right').show; $('#' + divIds[i] + '-left').hide; rightHeight = rightHeight + $('#' + divIds[i] + '-right').outerHeight(true); }			} else { $('#' + divIds[i] + '-left').hide; $('#' + divIds[i] + '-right').hide; }		}	}	if (mw.config.get('wgTitle') === 'Main Page') { $(mainPageMaintain); $(window).resize(function {			if (document.getElementsByClassName('pollspinner')[0]) {				setTimeout(function { $(mainPageMaintain); }, 500);			} else {				$(mainPageMaintain);			}		}); } });