MediaWiki:Gadget-CategoriaLingue.js

Nota: dopo aver pubblicato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.

  • Firefox / Safari: tieni premuto il tasto delle maiuscole Shift e fai clic su Ricarica, oppure premi Ctrl-F5 o Ctrl-R (⌘-R su Mac)
  • Google Chrome: premi Ctrl-Shift-R (⌘-Shift-R su un Mac)
  • Internet Explorer / Edge: tieni premuto il tasto Ctrl e fai clic su Aggiorna, oppure premi Ctrl-F5
  • Opera: premi Ctrl-F5.
(function () {
 
var i18n = {
	'specialpage': 'CategorieLingua',
	'title': 'Categorie delle lingue',
	'portlet-title': 'Categoria delle lingue',
	'portlet-tooltip': 'Visualizza la lista di tutte le lingue presenti su Wikizionario, con funzioni extra'
},
ns = mw.config.get('wgFormattedNamespaces'),
sp = mw.util.getUrl(ns[-1] + ':' + i18n.specialpage);
 
if(mw.config.get('wgNamespaceNumber') == -1 && mw.config.get('wgTitle') == 'CategorieLingua') {
	$('#mw-content-text').load( mw.util.getUrl( 'MediaWiki:CategoriaLingue-Intro') + ' #mw-content-text' ).ready(function() {
$('#catlinks').replaceWith('<div style="clear: both; -moz-column-count:3; -webkit-column-count:3; column-count:3;" id="lista"><ul id="elenco"></ul></div>');
	});

	$.get(
		mw.util.wikiScript('api'),
	{
		action: 'query',
		list: 'categorymembers',
		format: 'json',
		cmtitle: mw.config.get('wgFormattedNamespaces')[14]+ ':Lingue',
		cmnamespace: 14,
		cmtype: 'subcat',
		cmprop: 'title',
		cmlimit: 500
	}).done(function (data) {
		$.each( data.query.categorymembers, function(i, val) {
			$("#elenco").append('<li> <a href="'+mw.util.getUrl(val.title)+'">' + val.title+'</a></li>');
		});
 
		$( '#elenco li' ).each( function() {
			var url = '//tools.wmflabs.org/erwin85/randomarticle.php?' + $.param({ lang: 'it', family: 'wiktionary', categories: $( 'a:first', this ).text().replace(ns[14] + ':', ''), subcats: 1, d: 0 });
			// var url = mw.util.getUrl(ns[-1] + ':RandomInCategory/' + $( 'a:first', this ).text().replace(ns[14] + ':', ''));
			$( 'a', this )
			.after( ' ) ' )
			.after( $( '<a>' ).attr( 'href', url).text( 'Pagina a caso' ) ).after( ' ( ' );
		});
	});
 
	$('h1').first().text(i18n.title);
	document.title = i18n.title + ' - ' + mw.config.get('wgSiteName');
 
}

// Link nell'elenco delle pagine speciali
if ( mw.config.get('wgCanonicalSpecialPageName') === 'Specialpages' ) {
	$('#mw-specialpagesgroup-pagetools').next().find('ul').eq(0)
	.prepend('<li><a href="' + sp + '">' + i18n.title + '</a></li>');
}
 
 
mw.util.addPortletLink( 'p-tb', sp, i18n['portlet-title'], 'p-langcat', i18n['portlet-tooltip']);
})();

// Modifiche al link in modo che non appaia "rosso" quando viene linkato nel corpo della pagina, simulando l'esistenza della pagina

$("a[href$='/wiki/Speciale:CategorieLingua']").attr({'title': 'Speciale:CategorieLingua'}).removeClass();