MediaWiki:InterProject.js: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
Sposto in fondo l'aggiornamento dei link (dando priorità agli altri)
Come confermato su commons: https://commons.wikimedia.org/w/index.php?title=MediaWiki_talk:InterProject.js&diff=141601642&oldid=141361671
Riga 66: Riga 66:
} else {
} else {
panel.appendChild(interProject);
panel.appendChild(interProject);
}
var state = $.cookie('vector-nav-' + interProject.id);
if (state === 'true') {
$(interProject).addClass('expanded').find('.body, .pBody').show();
} else {
$(interProject).addClass('collapsed');
}
}
} );
} );

Versione delle 14:51, 6 dic 2014

// <nowiki>
 
/**
 * Workaround for [[bugzilla:708]] via [[Template:InterProject]].
 * Originally based on code from [[wikt:de:MediaWiki:Common.js]] by [[wikt:de:User:Melancholie]],
 * cleaned up and modified for compatibility with the Vector skin.
 *
 * Maintainers: [[User:Krinkle]], [[User:Ilmari Karonen]]
 * Modified by: [[User:Andyrom75]]: modifica i link di quello beta, aggiunge i progetti mancanti, se spcificati nell'interprogetto, senza crearne il menù
 */
$( function () {
	var interPr = document.getElementById('interProject');
	var sisterPr = document.getElementById('sisterProjects');
	if (!interPr) return;
	if ( document.getElementById('p-wikibase-otherprojects') ){
		//Aggiungo i progetti mancanti su wikidata gestiti come link interno
		$('#p-wikibase-otherprojects div ul' ).append($("#interProject div ul li:contains('Wikibooks') a"    ).parent());
		$('#p-wikibase-otherprojects div ul' ).append($("#interProject div ul li:contains('Wikizionario') a" ).parent());
		$('#p-wikibase-otherprojects div ul' ).append($("#interProject div ul li:contains('Wikiversità') a"  ).parent());

		//Aggiungo i progetti mancanti su wikidata gestiti come link esterno
		$('#p-wikibase-otherprojects div ul' ).append($("#interProject div ul li:contains('Meta-Wiki') a"    ).parent().parent());
		$('#p-wikibase-otherprojects div ul' ).append($("#interProject div ul li:contains('Wikispecies') a"  ).parent().parent());

		//Ai progetti già presenti su wikidata mi limito ad aggiornare il link
		$('.wb-otherproject-wikisource a'    ).attr("href", $("#interProject div ul li:contains('Wikisource') a"  ).attr("href"));
		$('.wb-otherproject-wikiquote a'     ).attr("href", $("#interProject div ul li:contains('Wikiquote') a"   ).attr("href"));
		$('.wb-otherproject-wikinews a'      ).attr("href", $("#interProject div ul li:contains('Wikinotizie') a" ).attr("href"));
		$('.wb-otherproject-commons a'       ).attr("href", $("#interProject div ul li:contains('Commons') a"     ).attr("href"));
		$('.wb-otherproject-wikivoyage a'    ).attr("href", $("#interProject div ul li:contains('Wikivoyage') a"  ).attr("href"));
		return;
	}

	var toolBox = document.getElementById('p-coll-print_export');
	var panel;
	if (toolBox) {
		panel = toolBox.parentNode;
	} else {
		// stupid incompatible skins...
		var panelIds = ['mw-panel', 'panel', 'column-one', 'mw_portlets'];
		for (var i = 0; !panel && i < panelIds.length; i++) {
			 panel = document.getElementById(panelIds[i]);
		}
		// can't find a place for the portlet, try to undo hiding
		if (!panel) {
			mw.util.addCSS('#interProject, #sisterProjects { display: block; }');
			return;
		}
	}
 
	mw.util.addCSS('#interProject, #sisterProjects { display: none; }');
 
	var interProject = document.createElement("div");
	interProject.id = "p-wikibase-otherprojects";
 
	interProject.className = (mw.config.get('skin') == 'vector' ? 'portal' : 'portlet');
 
	interProject.innerHTML =
		'<h3>' +
		(sisterPr && sisterPr.firstChild ? sisterPr.firstChild.innerHTML : "Sister Projects") +
		'<\/h3><div class="' + (mw.config.get('skin') == "vector" ? "body" : "pBody") +'">' +
		interPr.innerHTML + '<\/div>';
 
	if (toolBox && toolBox.nextSibling) {
		panel.insertBefore(interProject, toolBox.nextSibling);
	} else {
		panel.appendChild(interProject);
	}
} );