MediaWiki:Gadget-MobileScript.js

Revision as of 19:37, May 21, 2024 by Porplemontage (talk | contribs)

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for users of the mobile site */

/* Expand single talk section */
$(function() {
	setTimeout(function() {
		if ($('.ns-talk .collapsible-heading').length === 1)
			$('.collapsible-heading:not(.open-block)').click();
	}, 100);
});

/* Collapse boxes on smaller devices */
function mwMobileCollapse($collapsibleContent) {
	if ($(window).width() < 720)
		$.each($collapsibleContent, function(index, element) {
			$(element).data('mw-collapsible').collapse();
		});
}
mw.hook('wikipage.collapsibleContent').add(mwMobileCollapse);

/* Add mobile options toolbox link on Timeless */
$(function() {
	if (mw.config.get('skin') === 'timeless') {
		var optionsLink = '/Special:MobileOptions';
		var optionsDesc = 'Settings for the mobile site';
		mw.util.addPortletLink('p-tb', optionsLink, 'Mobile options', 't-options', optionsDesc);
	}
});

/* Move navboxes to dedicated section */
$(function() {
	if ($('.navbox-section').length) {
		if ($.trim($('section:nth-last-of-type(2) .succession-box').first().prev().text()) == '')
			$('section:nth-last-of-type(2) .succession-box').first().prev().css('display', 'none');
		if ($('section:nth-last-of-type(2) > *:not(.succession-box):not(.mw-empty-elt)').length > 0)
			$('section:nth-last-of-type(2) > .succession-box').detach().appendTo('.navbox-section');
		if ($('section:nth-last-of-type(2) > *:not(.navbox):not(.mw-empty-elt)').length > 0
		  || $('.section-heading:nth-last-of-type(2) > .mw-headline#References').length > 0
		  || $('.section-heading:nth-last-of-type(2) > .mw-headline#Sources').length > 0)
			$('section:nth-last-of-type(2) > .navbox').detach().appendTo('.navbox-section');
		if ($.trim($('.navbox-section').text()) == '') {
			$('.navbox-heading').attr('style', 'display:none !important');
			$('.navbox-section').attr('style', 'display:none !important');
		}
	}
});