Module:DisambiguationBuilder
Jump to navigation
Jump to search
Documentation for this module may be created at Module:DisambiguationBuilder/doc
--------------------------------------------------------------------------------
-- Builds disambiguation pages, meant to be called with {{PAGENAME}} and expects
-- an argument of the form Country Name
--------------------------------------------------------------------------------
local returnValue = {}
function returnValue.interface(frame)
local countryName = frame.args[1]
return frame:preprocess(returnValue.buildWikitext("Module:Data/Disambiguation", countryName))
end
function returnValue.buildWikitext(source, entry)
local dataSource = mw.loadData(source)
if dataSource == nil then
error("Data source not found")
return
end
local wikitextData = dataSource[entry]
if wikitextData == nil then
return ""
end
local wikitext = "'''"..entry.."''' may refer to:"
local numEntries = 0
local mostRecentEntry = nil
for dataIndex, data in ipairs(wikitextData) do
wikitext = wikitext.."\n* [["..data.."]]"
numEntries = numEntries + 1
mostRecentEntry = data
end
if numEntries == 1 then
return "#REDIRECT [["..mostRecentEntry.."]]"
end
return wikitext
end
return returnValue