میڈیا وکی:Gadget-interProjets.js
یاددہانی: محفوظ کرݨ دے بعد انہاں تبدیلیاں کوں ݙیکھݨ کیتے تہاکوں آپݨے براؤزر دا کیشی (cache) صاف کرݨاں ہوسی۔
- فائرفاکس/ سفاری: ڄݙݨ Reload تے کلک کرو تاں Shift دبا تے رکھو، یا Ctrl-F5 یا Ctrl-R دباؤ (Mac تے R-⌘)
- گوگل کروم: Ctrl-Shift-R دباؤ (Mac تے Shift-R-⌘)
- انٹرنیٹ ایکسپلورر: ڄݙݨ Refresh تے کلک کرو تاں Ctrl یا Ctrl-F5 دباؤ
- اوپیرا: Ctrl-F5 دباؤ۔
/**
* Extrait et affiche la liste
* des liens interprojets présents dans la page.
* auteur : http://fr.wikipedia.org/wiki/Utilisateur:Lgd
* licence : MIT
*
* Utilise : http://fr.wikipedia.org/wiki/MediaWiki:Gadget-interProjets.css
*
* Paramétrage: ajouter var interprojetsPosition = 'left'; dans le common.js personnel
* pour afficher la liste dans le menu de gauche,
* ou var interprojetsPosition = 'bottom'; pour l'afficher en pied de page.
* Ajouter interprojetsTexte = true; pour ne pas avoir d'images dans les liens.
*
* {{Catégorisation JS|InterProjets}}
*/
var interProjects = function ($) {
var nameSpace = mw.config.get('wgNamespaceNumber');
if(nameSpace == -1 || nameSpace == 6) {return};
var $list = $('<ul></ul>');
var kill = $('#content .autres-projets');
var $commons = $('.js-interprojets a[href*="commons.wikimedia.org"]').data('name', 'Commons');
var $wiktionary = $('.js-interprojets a[href*="wiktionary.org"]').data('name', 'Wiktionary');
var $wikinews = $('.js-interprojets a[href*="wikinews.org"]').data('name', 'Wikinews');
var $wikibooks = $('.js-interprojets a[href*="wikibooks.org"]').data('name', 'Wikibooks');
var $wikiquote = $('.js-interprojets a[href*="wikiquote.org"]').data('name', 'Wikiquote');
var $wikisource = $('.js-interprojets a[href*="wikisource.org"]').data('name', 'Wikisource');
var $wikiversity = $('.js-interprojets a[href*="wikiversity.org"]').data('name', 'Wikiversity');
var $wikivoyage = $('.js-interprojets a[href*="wikivoyage.org"]').data('name', 'Wikivoyage');
var $species = $('.js-interprojets a[href*="species.wikimedia.org"]').data('name', 'Wikipecies');
var check = 0;
if(typeof interprojetsPosition !== 'undefined' && interprojetsPosition) {
var position = interprojetsPosition;
} else {
var position = 'top';
}
function makeList(links) {
links = links.filter(function() {
if ($(this).closest('.js-no-interprojets').length == 0) {
return $(this);
} else {
return [];
}
});
if(links.length !== 0) {
var $item;
var text = links.data('name');
var duplicatesTable = [];
// removeDuplicates améliorable
links.clone().each(function() {
if (jQuery.inArray($(this).attr('href'), duplicatesTable) == -1) {
var $link = $(this);
var title=$(this).text() + ' sur ' + text;
$link.attr('title', title);
if(position == 'left') {
$link.text(text);
} else {
var images = $link.find('img');
if (images.length != 0) {
var alt = images.attr('alt');
if (typeof alt === 'undefined') {
alt = 'Image';
}
$link.text(alt);
}
}
$link.removeClass();
$item = $('<li></li>').prepend($link);
$list.append($item);
duplicatesTable.push($(this).attr('href'));
}
check++;
});
}
}
function displayList() {
if(position == 'left') {
var $portal = $('<div>')
.attr('id', 'p-coll-interprojects')
.attr('class', 'portal')
.html($('<h5>')
.text('Autres projets'))
.append($('<div>')
.attr('class', 'body')
.html($list));
$('#p-tb').after($portal);
var state=$.cookie('vector-nav-p-coll-interprojects');
if (state=='true' || state==null) {
$('#p-coll-interprojects').addClass('expanded').find('div.body').show();
} else {
$('#p-coll-interprojects').addClass('collapsed');
}
if (state!=null){
$.cookie('vector-nav-p-coll-interprojects',state,{'expires':30,'path':'/'});
}
} else if (position == 'bottom') {
var $portal = $('<div>')
.attr('class', 'mw-js-message-interprojets interprojets-bottom')
.html($list);
$('#content').append($portal);
} else {
var $portal = $('<div>')
.attr('class', 'mw-js-message-interprojets interprojets-bottom')
.html($list);
$('#content').prepend($portal);
}
}
function killThemAll() {
$(kill).remove();
}
makeList($commons);
makeList($wiktionary);
makeList($wikibooks);
makeList($wikiquote);
makeList($wikisource);
makeList($wikinews);
makeList($wikiversity);
makeList($wikivoyage);
makeList($species);
if(check !== 0) {
displayList();
killThemAll();
}
};
$(document).ready(interProjects);