Mô đun:Category handler/shared

Bản để in ra không còn được hỗ trợ và có thể có lỗi kết xuất. Xin hãy cập nhật các dấu trang của bạn và sử dụng chức năng in bình thường của trình duyệt thay thế.

Có thể viết tài liệu về mô đun này tại Mô đun:Category handler/shared/tài liệu.

-- This module contains shared functions used by [[Mô đun: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 = 'Mô đun: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