میدیاویکی:Sidebar-related.js
تێبینی: دوای پاشەکەوتکردن، پێویستە کاشی وێبگەڕەکەت پاک بکەیتەوە تا گۆڕانکارییەکان ببینیت. بۆ گووگڵ کڕۆم، فایەرفۆکس، مایکرۆسۆفت ئێج و سافاری: پەنجە لەسەر دوگمەی ⇧ Shift ڕاگرە و کرتە لەسەر Reload بکە. بۆ وردەکاری و ڕێنمایییەکان لەسەر وێبگەڕەکانی تر، بڕوانە ئێرە.
// From https://ru.wikipedia.org/w/index.php?title=MediaWiki:Sidebar-related.js&action=history
var addLink = function(list, label, site, page) {
var url = '//';
if (site == 'wikidata') {
url += 'www.' + site;
} else if (site == 'commons') {
url += site + '.wikimedia';
} else if (site == 'wikiquote') {
url += 'ku.' + site;
} else {
url += 'ckb.' + site;
}
url += '.org/wiki/' + mw.util.wikiUrlencode(page);
$('<li>')
.addClass('interlanguage-link interwiki-' + site)
.append(
$('<a>').attr({
href: url,
title: label + ': ' + page
}).text(label)
)
.appendTo(list);
};
var addRelatedSites = function() {
var itemId = mw.config.get( 'wgWikibaseItemId' );
if (!itemId ||
mw.config.get( 'wgAction' ) !== 'view' ||
mw.config.get( 'wgNamespaceNumber' ) % 2
) {
return;
}
var p_lang = $('#p-lang');
if (!p_lang.length) {
return;
}
$.ajax({
url: '//www.wikidata.org/w/api.php',
data: {
'format': 'json',
'action': 'wbgetentities',
'props': 'sitelinks|claims',
'ids': itemId
},
dataType: 'jsonp'
}).done(function (data) {
if (data.success) {
for (var i in data.entities) {
if (i == -1) {
return;
}
var p_rs = p_lang.clone().attr('id', 'p-relatedsites'),
p_rs_list = p_rs.find('ul').empty();
p_rs.find('div.after-portlet-lang').remove();
if (mw.user.options.get('skin') === 'vector') {
// Vector
p_rs.attr('aria-labelledby', 'p-relatedsites-label');
p_rs_list.attr('id', 'p-relatedsites-list');
p_rs.find('h3').attr('id', 'p-relatedsites-label').text('لە پرۆژەکانی تر');
var p_lang_label = p_lang.find('h3');
if (p_lang_label.attr('tabindex')) {
var tabindex = parseInt(p_lang_label.attr('tabindex'), 10) + 1;
p_lang_label.attr('tabindex', tabindex);
}
} else {
// Monobook & Modern
p_rs.find('h3').text('لە پرۆژەکانی تر');
if (!p_rs.find('div.pBody').length) {
$('<div>')
.addClass('pBody')
.append('<ul>')
.appendTo(p_rs);
p_rs_list = p_rs.find('ul');
}
}
var links = data.entities[i].sitelinks;
addLink(p_rs_list, 'ویکیدراوە', 'wikidata', itemId);
$('#t-wikibase').hide();
var claims = data.entities[i].claims;
if (claims && claims.P373 && claims.P373[0] &&
claims.P373[0].mainsnak.datavalue
) {
var cat_name = claims.P373[0].mainsnak.datavalue.value;
addLink(p_rs_list, 'کۆمنز', 'commons', 'Category:' + cat_name);
}
for (var proj in links) {
if (proj == 'commonswiki') {
if (!p_rs_list.find('.interwiki-commons').length) {
addLink(p_rs_list, 'کۆمنز', 'commons', links[proj].title);
}
}
else if (proj == 'kuwikiquote') {
addLink(p_rs_list, 'ویکیوتە', 'wikiquote', links[proj].title);
}
}
if (p_rs_list.children().length) {
p_rs.insertBefore(p_lang);
}
}
}
});
};
$.when(
$.ready,
mw.loader.using('mediawiki.util')
).done(addRelatedSites);