模块:Category handler/shared
跳转到导航
跳转到搜索
File:Test Template Info-Icon - Version (2).svg 模块文档[查看] [编辑] [历史] [清除缓存]
| File:Icons8 flat synchronize.svg | 本模块已全域手动同步。 请注意,若您修改本地的模块,将可能影响同步。 |
| File:Ambox important.svg | 此模块被引用于系统界面中。 任何对此模块的修改会立即反映于维基百科的用户界面。 为了避免造成大规模的影响,编者可以在本模块的沙盒和测试样例页面进行实验。 测试后无误的版本可以一次性地加入此模块中,但是修改前请务必于讨论页发起讨论。 |
| File:Lua-Logo.svg | 此模块使用Lua语言: |
-- This module contains shared functions used by [[Module: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 = 'Module: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