Difference between revisions of "Module:LatestAfD"

From blackwiki
Jump to navigation Jump to search
blackwiki>Swpb
blackwiki>Swpb
Line 5: Line 5:
 
local lang = mw.language.getContentLanguage()
 
local lang = mw.language.getContentLanguage()
 
local page = lang:ucfirst(input)
 
local page = lang:ucfirst(input)
base_string = "Wikipedia:Articles for deletion/" .. page
+
local base_string = "Wikipedia:Articles for deletion/" .. page
  
base_title = mw.title.new(base_string)
+
local base_title = mw.title.new(base_string)
afd2_title = mw.title.new(base_string .. " (2nd nomination)")
+
local afd2_title = mw.title.new(base_string .. " (2nd nomination)")
  
 
if not base_title.exists then
 
if not base_title.exists then
 
output = frame:expandTemplate{ title = 'error', args = { 'Warning: No AfD discussion exists for the linked article.' } }
 
output = frame:expandTemplate{ title = 'error', args = { 'Warning: No AfD discussion exists for the linked article.' } }
 
elseif not afd2_title.exists then
 
elseif not afd2_title.exists then
output = "[[" .. base_string .. "]]" .. lang[1]
+
output = "[[" .. base_string .. "]]"
 
else
 
else
 
afd_num = 1
 
afd_num = 1

Revision as of 18:43, 30 May 2017

Implements {{LatestAfD}}, which links to the most recent AfD discussion for the specified article.



local p = {}

function p.latestafd(frame)
	input = frame.args[1]
	local lang = mw.language.getContentLanguage()
	local page = lang:ucfirst(input)
	local base_string = "Wikipedia:Articles for deletion/" .. page

	local base_title = mw.title.new(base_string)
	local afd2_title = mw.title.new(base_string .. " (2nd nomination)")

	if not base_title.exists then
		output = frame:expandTemplate{ title = 'error', args = { 'Warning: No AfD discussion exists for the linked article.' } }
	elseif not afd2_title.exists then
		output = "[[" .. base_string .. "]]"
	else
		afd_num = 1
		latest = false
		while not latest do
			next_ordinal = frame:expandTemplate{ title = 'ordinal', args = { afd_num + 1 } }
			next_title = mw.title.new(base_string .. " (" .. next_ordinal .. " nomination)")
			if not next_title.exists then
				latest = true
				ordinal = frame:expandTemplate{ title = 'ordinal', args = { afd_num } }
				output = "[[" .. base_string .. " (" .. ordinal .. " nomination)]]"
			end
			afd_num = afd_num + 1
		end
	end
	return output
end

return p