Module:GetJSON: Difference between revisions
From AlternateWiki
Content added Content deleted
No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
m.root = mw.loadJsonData(frame.args[1]) |
m.root = mw.loadJsonData(frame.args[1]) |
||
if m.root[frame.args[2]] ~= nil then |
if m.root[frame.args[2]] ~= nil then |
||
if type(m.root[frame.args[2]]) == "table" then |
|||
local str = "" |
|||
for k,v in pairs(m.root[frame.args[2]]) do |
|||
str = str + v + ";" |
|||
end |
|||
return str |
|||
end |
|||
return m.root[frame.args[2]] |
return m.root[frame.args[2]] |
||
else |
else |
Revision as of 18:26, 15 May 2024
Documentation for this module may be created at Module:GetJSON/doc
local p = {};
p.main = function( frame )
local m = {}
m.root = mw.loadJsonData(frame.args[1])
if m.root[frame.args[2]] ~= nil then
if type(m.root[frame.args[2]]) == "table" then
local str = ""
for k,v in pairs(m.root[frame.args[2]]) do
str = str + v + ";"
end
return str
end
return m.root[frame.args[2]]
else
if frame.args[3] ~= nil then
return frame.args[3]
else
return ""
end
end
end
return p --All modules end by returning the variable containing their functions to Wikipedia.
-- Now we can use this module by calling {{#invoke: Example | hello }},
-- {{#invoke: Example | hello_to | foo }}, or {{#invoke:Example|count_fruit|bananas=5|apples=6}}
-- Note that the first part of the invoke is the name of the Module's wikipage,
-- and the second part is the name of one of the functions attached to the
-- variable that you returned.
-- The "print" function is not allowed in Wikipedia. All output is accomplished
-- via strings "returned" to Wikipedia.