MediaWiki:Common.js: различия между версиями
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) м Функции для добавления кастомных заголовков в TOC и кнопки "править" |
||
| Строка 440: | Строка 440: | ||
}); | }); | ||
} | } | ||
}); | |||
} | |||
// Функции для добавления кастомных заголовков в TOC и кнопки "править" | |||
function addCustomHeadingsWithEditLinks() { | |||
mw.hook('wikipage.content').add(function($content) { | |||
var $toc = $('#toc ul'); // Находим TOC | |||
if ($toc.length === 0) { | |||
return; // Если оглавление отсутствует, выходим | |||
} | |||
$content.find('.custom-heading').each(function(index) { | |||
var sectionId = $(this).attr('id') || 'custom-heading-' + (index + 1); | |||
$(this).attr('id', sectionId); // Присваиваем уникальный id заголовку | |||
// Создаем ссылку "править" | |||
var editUrl = mw.util.getUrl(mw.config.get('wgPageName')) + '?action=edit§ion=' + sectionId; | |||
var editLink = $('<span>').addClass('mw-editsection').append( | |||
$('<a>').attr('href', editUrl).text('править') | |||
); | |||
$(this).append(editLink); // Добавляем ссылку "править" к заголовку | |||
// Добавляем заголовок в оглавление (TOC) | |||
var headingText = $(this).text(); | |||
var tocItem = $('<li>').append( | |||
$('<a>').attr('href', '#' + sectionId).text(headingText) | |||
); | |||
$toc.append(tocItem); // Добавляем элемент в оглавление | |||
}); | |||
}); | }); | ||
} | } | ||
| Строка 482: | Строка 511: | ||
applyHighlighting(); | applyHighlighting(); | ||
}, 500); | }, 500); | ||
} | |||
var customHeadings = document.querySelectorAll('.custom-heading'); | |||
if (tables.length > 0) { | |||
addCustomHeadingsWithEditLinks(); | |||
} | } | ||
}); | }); | ||