Module:Mapframe
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