跳转到内容

模組:Multiple releases

维基百科,自由的百科全书

这是本页的一个历史版本,由Willy1018留言 | 贡献2017年4月2日 (日) 22:36 建立内容为“local infobox = require ('Module:Infobox').infobox local getArgs = require ('Module:Arguments').getArgs local p = {} function p.main( frame )…”的新页面)编辑。这可能和当前版本存在着巨大的差异。

(差异) ←上一修订 | 最后版本 (差异) | 下一修订→ (差异)
local infobox = require ('Module:Infobox').infobox
local getArgs = require ('Module:Arguments').getArgs

local p = {}

function p.main( frame )
    local args = getArgs (frame)

    InfoboxArgs = {}
    InfoboxArgs["subbox"] = "yes"

    local a = 1
    local IsEmpty = true
    local KeepCheckingForArgs = true
    while KeepCheckingForArgs == true do
        local thisBranch = "branch" .. a
        local thisVersion = "version" .. a
        local thisDate = "date" .. a
        local CurLabel = "label" .. a
        local CurData = "data" .. a

        if args[thisBranch] and args[thisVersion] then
            InfoboxArgs[CurLabel] = args[thisBranch]
            InfoboxArgs[CurData] = args[thisVersion]
            if args[thisDate] then InfoboxArgs[CurData] = InfoboxArgs[CurData] .. " / " .. args[thisDate] end
        else
            KeepCheckingForArgs = false
            if a > 1 then IsEmpty = false end
        end
        a = a + 1
    end

    if IsEmpty == false then
        return infobox(InfoboxArgs)
    else
        return nil
    end
end

return p