Documentation for this module may be created at Module:Sandbox/Evad37/Signpost archives by year/doc
require('strict')
local p = {}
local startYear = 2005
local endYear
local prefix = "Wikipedia:Wikipedia Signpost/Archives/"
p.list = function(frame)
-- Get current year
frame = frame or mw.getCurrentFrame()
local lang = mw.language.new("en")
local currentYear = lang:formatDate("Y")
-- Get end year (this year if the page exists, otherwise last year)
local currentYearTitle = mw.title.new(prefix .. currentYear)
if currentYearTitle.exists then
endYear = tonumber(currentYear)
else
endYear = tonumber(currentYear) - 1
end
-- Create a table of links
local links = {}
local year = startYear
while year <= endYear do
table.insert(links, "[["..prefix..year.."|"..year.."]]")
year = year + 1
end
-- Format as wikitext
local wikitext = table.concat(links, "{{·}}")
-- return after pre-processing
return frame:preprocess(wikitext)
end
return p