Module:TestModule: Difference between revisions
Appearance
AdamZachar (talk | contribs) No edit summary |
AdamZachar (talk | contribs) No edit summary |
||
Line 2: | Line 2: | ||
function funcRecurseLineage(output, parentTopic) | function funcRecurseLineage(output, parentTopic) | ||
local topics, errors = mw.ext.externaldata.getExternalData | |||
local output = "" | |||
local parentTopic = frame.args.parentTopic | |||
local topics, errors = mw.ext.externaldata.getExternalData { | |||
source = "CaseData", | source = "CaseData", | ||
query = "childrenTopics", | query = "childrenTopics", | ||
data = "topicName=topic_name", | data = "topicName=topic_name", | ||
parameters = parentTopic | parameters = parentTopic | ||
} | |||
if topics ~= nil then | if topics ~= nil then | ||
Line 15: | Line 18: | ||
for i, topic in ipairs(topics) do | for i, topic in ipairs(topics) do | ||
output = output .. " <li>" .. "[[" .. topic.topicName .. "]]" | output = output .. " <li>" .. "[[" .. topic.topicName .. "]]" | ||
local childTopics, errors3 = mw.ext.externaldata.getExternalData { | |||
source = "CaseData", | |||
query = "childrenTopics", | |||
data = "topicName=topic_name", | |||
parameters = topic.topicName | |||
} | |||
if childTopics ~= nil then | |||
output = output .. "<ul>" | |||
for i, childTopic in ipairs(childTopics) do | |||
output = output .. " <li>" .. "[[" .. childTopic.topicName .. "]]" | |||
end | |||
output = output .. "</ul>" | |||
end | |||
end | end | ||
Line 24: | Line 43: | ||
return output | return output | ||
end | end | ||
Line 31: | Line 51: | ||
local parentTopic = frame.args.parentTopic | local parentTopic = frame.args.parentTopic | ||
final = funcRecurseLineage({output=output, parentTopic=parentTopic}) | final = funcRecurseLineage({output=frame.args.output, parentTopic=frame.args.parentTopic}) | ||
return final | return final |
Revision as of 12:24, 10 June 2025
local p = {} --p stands for package
function funcRecurseLineage(output, parentTopic)
local output = ""
local parentTopic = frame.args.parentTopic
local topics, errors = mw.ext.externaldata.getExternalData {
source = "CaseData",
query = "childrenTopics",
data = "topicName=topic_name",
parameters = parentTopic
}
if topics ~= nil then
output = output .. "<ul>"
for i, topic in ipairs(topics) do
output = output .. " <li>" .. "[[" .. topic.topicName .. "]]"
local childTopics, errors3 = mw.ext.externaldata.getExternalData {
source = "CaseData",
query = "childrenTopics",
data = "topicName=topic_name",
parameters = topic.topicName
}
if childTopics ~= nil then
output = output .. "<ul>"
for i, childTopic in ipairs(childTopics) do
output = output .. " <li>" .. "[[" .. childTopic.topicName .. "]]"
end
output = output .. "</ul>"
end
end
output = output .. "</ul>"
end
return output
end
function p.recurseLineage( frame )
local output = frame.args.output
local parentTopic = frame.args.parentTopic
final = funcRecurseLineage({output=frame.args.output, parentTopic=frame.args.parentTopic})
return final
end
function p.topicLineage( frame )
local output = ""
local parentTopic = frame.args.parentTopic
local topics, errors = mw.ext.externaldata.getExternalData {
source = "CaseData",
query = "childrenTopics",
data = "topicName=topic_name",
parameters = parentTopic
}
if topics ~= nil then
output = output .. "<ul>"
for i, topic in ipairs(topics) do
output = output .. " <li>" .. "[[" .. topic.topicName .. "]]"
local childTopics, errors3 = mw.ext.externaldata.getExternalData {
source = "CaseData",
query = "childrenTopics",
data = "topicName=topic_name",
parameters = topic.topicName
}
if childTopics ~= nil then
output = output .. "<ul>"
for i, childTopic in ipairs(childTopics) do
output = output .. " <li>" .. "[[" .. childTopic.topicName .. "]]"
end
output = output .. "</ul>"
end
end
output = output .. "</ul>"
end
return output
end
return p