MediaWiki:Gadget-revealInterface.js

From Terraria Wiki
Jump to navigation Jump to search

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.
var l10n = (function(){
	var $text = {
		'linktext': {
			'en': 'Reveal interface',
			'de': 'Interface aufdecken',
			'fr': 'Révèle l\'interface',
			'pt-br': 'Revelação de interface',
			'ru': 'Раскрыть интерфейс'
		},
		'hovertext': {
			'en': 'Reveal MediaWiki interface message names',
			'de': 'MediaWiki-Systemnachrichtsnamen anzeigen',
			'fr': 'Révèle les noms des messages de l\'interface MediaWiki',
			'pt-br': 'Revelar os nomes das mensagens da interface do MediaWiki',
			'ru': 'Раскрыть названия системных сообщений интерфейса MediaWiki'
		},
		'rLinktext': {
			'en': 'Regular view',
			'de': 'Reguläre Ansicht',
			'fr': 'Vue normale',
			'pt-br': 'Visualização normal',
			'ru': 'Исходный вид'
		},
		'rHovertext': {
			'en': 'Reload this page in regular view (un-reveal MediaWiki interface message names)',
			'de': 'MediaWiki-Systemnachrichten verbergen und die Seite normal neu laden',
			'fr': 'Recharger cette page en vue régulière (enlève les noms des messages de l\'interface MediaWiki)',
			'pt-br': 'Recarregue esta página na visualização normal (revelar os nomes das mensagens da interface do MediaWiki)',
			'ru': 'Перезагрузить данную страницу с возвращением в исходный вид (скрыть названия системных сообщений интерфейса MediaWiki)'
		}
	};
	var $lang = mw.config.get( 'wgUserLanguage' ) || 'en';
	return function(key){
		return $text[key] && ($text[key][$lang] || $text[key]['en']) || '';
	};
})();

if (mw.config.get('wgNamespaceNumber') != 8) { // only outside of the "MediaWiki" namespace
	var url = new URL(window.location.href);
	var linktext = '';
	var hovertext = '';
	if (url.searchParams.getAll('uselang').includes('qqx')) { // there might be multiple "uselang" parameters, hence getAll() and not just get()
		url.searchParams.delete('uselang');
		linktext = l10n('rLinktext');
		hovertext = l10n('rHovertext');
	} else {
		url.searchParams.set('uselang', 'qqx');
		linktext = l10n('linktext');
		hovertext = l10n('hovertext');
	}
	mw.util.addPortletLink('p-cactions', url.href, linktext, 'ca-gadget-revealinterface', hovertext, '3');
}