Module:SMW Table: Difference between revisions

From Claremont MakerSpace
No edit summary
No edit summary
Line 1: Line 1:
local p = {}
local p = {}
local function tremoveKey(tab, key)
    local element = tab[key]
    tab[key] = nil
    return element
end


local function tableContents(data)
local function tableContents(data)
Line 21: Line 15:


function p.ToolInfo(frame)
function p.ToolInfo(frame)
     local args = {name = tremoveKey(frame.args, "name"),
     local args = {name = frame.args.name,
                   subname = tremoveKey(frame.args, "subname"),
                   subname = frame.args.subname,
                   image = tremoveKey(frame.args, "image")}
                   image = frame.args.image}
    frame.args.name = nil
    frame.args.subname = nil
    frame.args.image = nil
     args.contents = tableContents(frame.args)
     args.contents = tableContents(frame.args)
     return frame:expandTemplate{title="InfoBox", args=args}
     return frame:expandTemplate{title="InfoBox", args=args}

Revision as of 01:49, 30 June 2018

Documentation for this module may be created at Module:SMW Table/doc

local p = {}

local function tableContents(data)
    local r = ''
    for key, value in pairs(data) do
        r = r..'|-\n!'..key..'\n|'..value..'\n'
    end
    return r
end

function p.infoboxTableContents(frame)
    return tableContents(frame.args)
end


function p.ToolInfo(frame)
    local args = {name = frame.args.name,
                  subname = frame.args.subname,
                  image = frame.args.image}
    frame.args.name = nil
    frame.args.subname = nil
    frame.args.image = nil
    args.contents = tableContents(frame.args)
    return frame:expandTemplate{title="InfoBox", args=args}
end

return p