Модуль:Category handler/shared
Зовнішній вигляд

![]() | Цей модуль позначено як К:такий, що потребує захищеного статусу (86). Завершені модулі використовуються в дуже великій кількості статей, або часто використовуються як підстановки. Позаяк акти вандалізму або помилки можуть вплинути на багато сторінок і навіть незначне редагування призведе до істотного навантаження на сервери, вони підлягають захисту від редагувань. |
![]() | Цей модуль Lua використовується в системних повідомленнях і на близько 112 000 сторінках. Його зміни можуть призвести до миттєвих змін у користувацькому інтерфейсі Вікіпедії. Для уникнення великомасштабних збоїв та непотрібного навантаження на сервер, будь-які зміни спочатку потрібно перевірити на підсторінках /пісочниці та /тестів цього модуля, або у вашій пісочниці модуля. Потім перевірені зміни можуть бути впроваджені на цій сторінці єдиним редагуванням. Будь ласка, обговорюйте будь-які зміни на сторінці обговорення перед їхнім впровадженням. |
![]() | Цей модуль залежить від наступних модулів: |
Цей модуль містить спільні функції, що використовуються Модуль:Category handler та його підмодулями.
Документація вище включена з Модуль:Category handler/shared/документація. (ред. | історія) Дописувачі можуть експериментувати на підсторінках пісочниця (створити | дзеркало) та тести (створити) цього модуля. Будь ласка, додавайте категорії до підсторінки /shared/документація. Підсторінки цієї сторінки. |
-- This module contains shared functions used by [[Модуль:Category handler]]
-- and its submodules.
local p = {}
function p.matchesBlacklist(page, blacklist)
for i, pattern in ipairs(blacklist) do
local match = mw.ustring.match(page, pattern)
if match then
return true
end
end
return false
end
function p.getParamMappings(useLoadData)
local dataPage = 'Модуль:Namespace detect/data'
if useLoadData then
return mw.loadData(dataPage).mappings
else
return require(dataPage).mappings
end
end
function p.getNamespaceParameters(titleObj, mappings)
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
local mappingsKey
if titleObj.isTalkPage then
mappingsKey = 'talk'
else
mappingsKey = mw.site.namespaces[titleObj.namespace].name
end
mappingsKey = mw.ustring.lower(mappingsKey)
return mappings[mappingsKey] or {}
end
return p