Module:Mapframe
Ọdịdị
Documentation for this module may be created at Module:Mapframe/doc
--Parameter for cleaned-up parent.args (whitespace trimmed, blanks removed)
local Args = {}
function setCleanArgs(argsTable)
local cleanArgs = {}
for key, val in pairs(argsTable) do
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val ~= '' then
cleanArgs[key] = val
end
else
cleanArgs[key] = val
end
end
return cleanArgs
end
function makeTag(name, attributes, content)
local tag --todo
return tag
end
function makeContentJson(contentArgs)
local data = {}
if contentArgs.type == 'point' then
data.type = "Feature"
else
data.type = "ExternalData"
end
--todo: fill out rest of data
return mw.text.jsonEncode(data)
end
local p = {}
function p.main(frame)
local parent = frame.getParent(frame)
Args = setCleanArgs(parent.args)
local content = {};
local contentIndex = '';
while Args['type'..contentIndex] do
local contentArgs = {}
contentArgs['type'] = Args['type'..contentIndex]
--todo: Add other relevant args
content[contentIndex or 1] = makeContentJson(contentArgs)
contentIndex = (contentIndex or 1) + 1
local mapContent
local output = ''
--if needsTitleTag
return output
end
return p
end