跳转到内容

模組:Article count by project and class

维基百科,自由的百科全书

这是本页的一个历史版本,由風中的刀劍留言 | 贡献2015年8月21日 (五) 07:31编辑。这可能和当前版本存在着巨大的差异。

local class = mw.loadData('Module:Class/data')

local getArgs = require('Module:Arguments').getArgs
local p = {}

local function returnClassName(k)
	k = string.lower(k)
	
	for i, v in pairs(class) do
		if k == v.code then
			return v.name
		end
	end	

end

function p.main(frame)
	local args = getArgs(frame)
	return p._main(args)
end

function p._main(args)
	local count = 0
	
	for i, v in ipairs(args) do
		local categoryName = returnClassName(v)
		
		if returnClassName(v) then
			count = count + mw.site.stats.pagesInCategory( categoryName .. '级' .. args.project .. '条目', 'pages' )
		end

	end

	if tonumber(args.weight) then
		count = count * args.weight
		count = math.floor(count)
	end

	return count
end

return p