Module:SMW

From devsummit
Revision as of 08:53, 27 November 2017 by Ccicalese (talk | contribs)

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"
    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"
    end
    result = result .. "|}"

    return result
end

return p