مدیاویکی:Gadget-RelatedSites.js
نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.
- فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلیدهای Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-R)
- گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-Shift-R)
- اینترنت اکسپلورر/ Edge: کلید Ctrl را نگهدارید و روی دکمهٔ Refresh کلیک کنید، یا کلیدهای Ctrl-F5 را با هم فشار دهید
- اپرا: Ctrl-F5 را بفشارید.
window.relatedsites = {};
relatedsites.items = [];
relatedsites.make_items = function(){
var items = $('#relatedsites span');
if(items)
{
items.each(function(){
var item = $(this);
var dbname = item.attr('data-dbname');
var val = item.attr('data-val');
if(dbname && val)
{
var url = '';
var label = '';
var title = '';
if(dbname=='fawiki')
{
url = '//fa.wikipedia.org/wiki/$1';
label = 'ویکی\u200cپدیای فارسی';
title = val;
} else if (dbname=='enwiki') {
url = '//en.wikipedia.org/wiki/$1';
label = 'ویکی\u200cپدیای انگلیسی';
title = val;
} else if (dbname=='comcat') {
url = '//commons.wikimedia.org/wiki/Category:$1';
label = 'ردهٔ ویکی\u200cانبار';
title = 'Category:' + val;
}
url = url.replace('$1',encodeURI(val.replace(/ /g,'_')));
relatedsites.items.push(
$('<li/>').attr('class','interwiki-'+dbname)
.append(
$('<a/>').attr('rel','nofollow')
.attr('href',url)
.attr('title',title)
.text(label)
)
);
}
});
items.remove();
}
};
relatedsites.run = function(){
relatedsites.make_items();
if(mw.config.get('wgUserLanguage') == 'fa')
{
if(relatedsites.items.length>0)
{
var p_relatedsites = $('#p-relatedsites');
if(p_relatedsites.length==0)
{
var p_relatedsites = $('<div/>').attr('class','portal').attr('id','p-relatedsites');
var h3 = $('<h3/>').text('وب\u200cگاه\u200cهای مرتبط').appendTo(p_relatedsites);
var div = $('<div/>').attr('class','body').appendTo(p_relatedsites);
var ul = $('<ul/>').appendTo(div);
p_relatedsites.insertAfter($('#p-tb'));
}
var container = $('#p-relatedsites div ul');
for(i in relatedsites.items)
{
container.prepend(relatedsites.items[i]);
}
}
}
};
$(relatedsites.run);