MediaWiki:Common.js: Difference between revisions

From Destinypedia, the Destiny wiki

No edit summary
No edit summary
Line 38: Line 38:
}
}
});
});
/* 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);


/* SocialProfile: Point social talk tabs to user talk */
/* SocialProfile: Point social talk tabs to user talk */

Revision as of 17:00, August 5, 2020

/* 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);

/* SocialProfile: Point social talk tabs to user talk */
$(function() {
	var namespace = mw.config.get('wgCanonicalNamespace');
	if (namespace === 'UserProfile' || namespace === 'UserWiki') {
		var talkTab;
		if (mw.config.get('skin') == 'nimbus') {
			talkTab = $('a[title="Discussion about the content page"]');
			talkTab.removeClass('tab-new');
		} else {
			talkTab = $('#ca-talk a');
			$('#ca-talk').removeClass('new');
		}
		var talkUrl = talkTab.attr('href').replace('index.php?title=', '').replace(namespace, 'User').replace('&action=edit&redlink=1', '');
		var subIndex = talkUrl.indexOf('/', 1);
		if (subIndex > 0)
			talkUrl = talkUrl.substring(0, subIndex);
		talkTab.attr('href', talkUrl);
	}
});