Advertisement

Módulo:Navbox

A documentação para este módulo pode ser criada em Módulo:Navbox/doc

local p = {}

local collapseOptions = {
    ["collapsed"]         = "mw-collapsible mw-collapsed",
    ["collapsedgroups"]   = "mw-collapsible mw-collapsed",
    ["uncollapsed"]       = "mw-collapsible",
    ["uncollapsedgroups"] = "mw-collapsible", 
}

function p.collapse(frame)
    local optionGroups = mw.text.split(frame.args[1], ",")
    local optionCount = table.getn(optionGroups)
    if optionCount > 0 then
        n = 1
        while n <= optionCount do
            if collapseOptions[optionGroups[n]] ~= nil then
                result = collapseOptions[optionGroups[n]]
            end
            n = n + 1
        end
    end

    if result == nil then
        result = "mw-collapsible mw-collapsed"
    end

    return result
end

function p.toggle(frame)
    local toggleGroups = mw.text.split(frame.args[1], ",")
    local toggleCount = table.getn(toggleGroups)
    local toggleResult = 0
    if toggleCount > 0 then
        n = 1
        while n <= toggleCount do
            if collapseOptions[toggleGroups[n]] ~= nil then
                toggleResult = toggleResult +1
            end
            n = n + 1
        end
    end

    if toggleResult > 0 then
        result = '<td class="np-navbox-header-side mw-customtoggle-myDivision" data-expandtext="Show" data-collapsetext="Hide"></td>'
    else
        result = '<td class="np-navbox-header-side>&nbsp;</td>'
    end

    return result
end

function p.columns(frame)
    local columnGroups = mw.text.split(frame.args[1], ",")
    local groupCount = table.getn(columnGroups)
    local columnResult = 0

    if groupCount > 0 then
        n = 1
        while n <= table do
            if columnGroups[n] == "columns" then
                groupCount = groupCount + 1
            end
        end
    end

    if columnResult > 0 then
        columnResult = "columns"
    end

    return columnResult
end

return p