Module:SMW
From devsummit
Documentation for this module may be created at Module:SMW/doc
-- Module:SMW
local p = {}
-- Return results
function p.sessionTable(frame)
local sessions = mw.smw.getQueryResult( "[[Category:Sessions]]" )
if sessions == nil then
return "(no values)"
end
if type( sessions ) ~= "table" then
return "(invalid query result)"
end
local statements = {};
for k,v in pairs( sessions.results ) do
statements[v.fulltext] = mw.smw.getQueryResult( "[[Category:Statements]][[Session::" .. v.fulltext .. "]]" )
end
local result = "\n{| class='wikitable\n|\n"
for k1,v1 in pairs( sessions.results ) do
result = result .. "![[" .. v1.fulltext .. "]]\n"
end
for k1,v1 in pairs( sessions.results ) do
result = result .. "|-\n![[" .. v1.fulltext .. "]]\n"
for k2,v2 in pairs( sessions.results ) do
result = result .. "| style='text-align:center;'|"
if v1.fulltext == v2.fulltext then
result = result .. "X"
else
local count = 0
for k3,v3 in pairs( statements[v1.fulltext] ) do
end
result = result .. count
end
result = result .. "\n"
end
end
result = result .. "|}"
return result
end
return p