Jump to content

Module:XfD old/AfD and MfD

Permanently protected module
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Pppery (talk | contribs) at 20:24, 15 March 2019. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
-- Various hacky solutions to allow AfD and MfD to show up on [[Template:XFD Backlog]]
-- AfD is easy, as [[User:Mathbot]] already summarizes the total on each day
local p = {}
local lang = mw.getContentLanguage()
function p.afd(frame) 
	local month = frame.args.month
	month = lang:formatDate("Y F", month)
	local content = mw.title.new("Wikipedia:Articles for deletion/Old"):getContent()
	local pat = "%[%[Wikipedia:Articles for deletion/Log/" .. month .. "[^%]]*%]%] %(([0-9]+) open /"
	local count = 0
	for daycount in content:gmatch(pat) do
		count = count + daycount
	end
	return count
end
-- MfD is much harder, because the only list of all active MfDs is the main
-- [[Wikipedia:Miscellany for deletion]] page itself
function p.mfd(frame)
	local month = frame.args.month
	local content = mw.title.new("Wikipedia:Miscellany for deletion"):getContent()
	local pat = lang:formatDate("^===F [0-9]*, Y===$", month)
	local _, endindex = content:find("==Old business==")
	local rightmonth = false
	local count = 0
	for line in mw.text.gsplit(content:sub(endindex,#content), "\n") do
		if line:find(pat) then
			rightmonth = true
		elseif line:find("===.*===") then
			-- A section header for the wrong month
			if rightmonth then
				-- We're now looking at MfDs before the month in question
				break
			end
			-- We still haven't reached the month in question yes
		elseif rightmonth and line:find("{{Wikipedia:Miscellany for deletion/") then
			count =  count + 1
		end
	end
	return count
end
return p