if (mw.config.get('wgNamespaceNumber') >= 0) {
mw.loader.using('mediawiki.util').done(function () {
$(pagePortlet);
});
}
function pagePortlet()
{
// добавить новый портлет 'страница'
beforePortlet = document.getElementById('p-tb');
if (!beforePortlet) return;
var skin = mw.config.get('skin');
pPage = document.createElement('div');
pPage.className = (skin=="vector")?'portal collapsed':'portlet';
pPage.id = 'p-page';
pPageHeader = document.createElement('h3');
pPageHeader.innerHTML = 'Страница';
pPageDiv = document.createElement('div');
pPageDiv.className = (skin=="vector")?'body':'pBody';
var pPageUl = document.createElement('ul');
pPageDiv.appendChild(pPageUl);
pPage.appendChild(pPageHeader);
pPage.appendChild(pPageDiv);
beforePortlet.parentNode.insertBefore(pPage, beforePortlet);
// переместить туда 'Ссылки сюда' и 'Связанные правки'
moveLinkToPortlet('p-page', 't-whatlinkshere');
moveLinkToPortlet('p-page', 't-recentchangeslinked');
// вычислить переменные для тулсервера (например, dbname=ruwiki_p)
var wikilang = mw.config.get('wgServer').split('.')[0].substring(7);
var wikifam = mw.config.get('wgServer').split('.')[1];
var dbname = (wikifam == 'wikipedia')? 'wiki' : wikifam;
dbname = wikilang + dbname + '_p';
// Ссылки:
mw.util.addPortletLink('p-page', '/wiki/Special:Prefixindex/' + mw.config.get('wgPageName') + '/', 'Подстраницы', '', 'Подстраницы этой страницы');
mw.util.addPortletLink('p-page', '/wiki/Special:Log?page='+mw.config.get('wgPageName'), 'Журналы', 'ca-logs', 'Просмотр журналов для этой страницы');
mw.util.addPortletLink('p-page', '/wiki/'+mw.config.get('wgPageName')+'?action=purge', 'Очистить кэш', 'ca-purge', 'Очистка кэша сервера для этой страницы');
mw.util.addPortletLink('p-page', 'http://tools.wikimedia.de/~interiot/cgi-bin/contribution_tree?dbname='+dbname+'&article='+mw.config.get('wgPageName')+'&user='+mw.config.get('wgUserName'), 'Мои правки', 'mycontrib', 'Мой вклад в эту страницу');
mw.util.addPortletLink('p-page', 'http://tools.wikimedia.de/~daniel/WikiSense/Contributors.php?wikilang=' +wikilang+'&wikifam=.'+wikifam+'.org&grouped=on&order=-edit_count&page='+encodeURIComponent(mw.config.get('wgPageName')), 'Все авторы','', 'Все авторы страницы');
// editcount ° — ссылка на editcounter участника под ссылкой «Вклад участника»
//if ((wgNamespaceNumber == 2 || wgNamespaceNumber == 3) && (tContributions = document.getElementById('t-contributions')))
// mw.util.addPortletLink('p-tb', 'http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?dbname='+dbname+ '&user=' + wgTitle, 'editcount °', 'editcount', 'Interiot\'s user counter','', tContributions.nextSibling);
}
//вспомогательная функция перемещает ссылку linkId в portlet portletId
function moveLinkToPortlet(portletId, linkId, newText)
{
var portlet, ul, link;
if (!(portlet = document.getElementById(portletId)) || !(ul = portlet.getElementsByTagName('ul')[0]) || !(link = document.getElementById(linkId))) return;
ul.appendChild(link);
if (newText) link.firstChild.innerHTML = newText;
}