Utente:Ricordisamoa/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').replaceWith('<div style="-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 = '//toolserver.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');

}

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