MediaWiki:Gadget-newsectionbottom.js
Перейти к навигации
Перейти к поиску
Замечание: Возможно, после публикации вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl+F5 или Ctrl+R (⌘+R на Mac)
- Google Chrome: Нажмите Ctrl+Shift+R (⌘+Shift+R на Mac)
- Internet Explorer / Edge: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl+F5
- Opera: Нажмите Ctrl+F5.
//* Гаджет для добавления секции снизу в обсуждениях *//
//* Автор — Урахара в Циклопедии, лицензия — CC BY-SA 4.0 *//
(function() {
var currentUrl = window.location.href;
if (currentUrl.includes('/w/')) {
return;
}
var namespace = mw.config.get('wgNamespaceNumber');
var discussionNamespaces = [1, 3, 5, 7, 9, 11, 13, 15];
if (!discussionNamespaces.includes(namespace)) {
return;
}
mw.loader.using('mediawiki.util').then(function() {
var $content = $('#mw-content-text');
if (!$content.length) return;
// Проверка прав на редактирование
var userGroups = mw.config.get('wgUserGroups') || [];
var restrictionEdit = mw.config.get('wgRestrictionEdit');
var canEdit = true;
if (restrictionEdit) {
var editRestrictions = restrictionEdit.edit || restrictionEdit;
if (!Array.isArray(editRestrictions)) {
editRestrictions = [editRestrictions];
}
if (editRestrictions.includes('sysop') && !userGroups.includes('sysop')) {
canEdit = false;
} else if (editRestrictions.includes('autoconfirmed') && !userGroups.includes('autoconfirmed') && !userGroups.includes('sysop')) {
canEdit = false;
}
}
if (!canEdit) return;
// Локализация
var buttonText = {
'ar': 'موضوع جديد ✏️',
'az': '✏️ yeni mövzu',
'ba': '✏️ яңы тема',
'be': '✏️ новая тэма',
'bxr': '✏️ шэнэ сэдэб',
'ce': '✏️ керла тема',
'cv': '✏️ ҫӗнӗ тема',
'cu': '✏️ нова́ѧ те́ма',
'en': '✏️ new topic',
'eo': '✏️ nova temo',
'et': '✏️ uus teema',
'hy': '✏️ նոր թեմա',
'inh': '✏️ керда тема',
'ja': '✏️ 新しいトピック',
'ka': '✏️ ახალი თემა',
'kk': '✏️ жаңа тақырып',
'ko': '✏️ 새로운 주제',
'koi': '✏️ выль тема',
'kv': '✏️ выль тема',
'ky': '✏️ жаңы тема',
'la': '✏️ novum argumentum',
'lt': '✏️ nauja tema',
'lv': '✏️ jauna tēma',
'mdf': '✏️ од тема',
'mhr': '✏️ у теме',
'mrj': '✏️ у тема',
'myv': '✏️ од тема',
'os': '✏️ ног темæ',
'ro': '✏️ subiect nou',
'sah': '✏️ саҥа тиэмэ',
'tg': '✏️ мавзӯи нав',
'tk': '✏️ täze tema',
'tok': '✏️ toki sin',
'tt': '✏️ яңа тема',
'tyv': '✏️ чаа тема',
'udm': '✏️ выль тема',
'uk': '✏️ нова тема',
'uz': '✏️ yangi mavzu',
'vep': '✏️ uz’ tem',
'yi': 'נייע טעמע ✏️',
'xal': '✏️ шин төр',
'zh': '✏️ 新话题'
}[mw.config.get('wgUserLanguage')] || '✏️ новая тема';
// Создание кнопки
var editUrl = mw.util.getUrl(mw.config.get('wgPageName'), {
action: 'edit',
section: 'new'
});
$('<a>', {
href: editUrl,
'class': 'mw-ui-button mw-ui-progressive mw-add-section-bottom',
text: buttonText
}).insertAfter($content);
// Стили
mw.util.addCSS('.mw-add-section-bottom{display:inline-block;margin:20px 0}');
});
})();