Modul:ListDivider

Aus Steel Beasts Wiki
Version vom 23. September 2023, 13:08 Uhr von Dr.Thodt (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „local p = {} function p.splitIntoColumns(frame) local content = frame.args[1] -- Der Inhalt der Aufzählung local threshold = tonumber(frame.args[2]) or 9 -- Schwellenwert für die Anzahl der Elemente, ab dem in Spalten aufgeteilt wird local items = mw.text.split(content, "\n") -- Trennen der Aufzählungselemente nach Zeilenumbrüchen local itemCount = #items if itemCount >= threshold then local columns = math.ceil(itemCount…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Die Dokumentation für dieses Modul kann unter Modul:ListDivider/Doku erstellt werden

local p = {}

function p.splitIntoColumns(frame)
    local content = frame.args[1] -- Der Inhalt der Aufzählung
    local threshold = tonumber(frame.args[2]) or 9 -- Schwellenwert für die Anzahl der Elemente, ab dem in Spalten aufgeteilt wird

    local items = mw.text.split(content, "\n") -- Trennen der Aufzählungselemente nach Zeilenumbrüchen
    local itemCount = #items

    if itemCount >= threshold then
        local columns = math.ceil(itemCount / 3) -- Anzahl der Spalten (hier: 3 Spalten)
        local columnWidth = 100 / columns -- Breite jeder Spalte in Prozent

        local output = '<div style="columns:' .. columns .. ';">'
        for i, item in ipairs(items) do
            if i % columns == 1 then
                output = output .. '<div style="width:' .. columnWidth .. '%;">' -- Öffnen einer neuen Spalte
            end
            output = output .. '* ' .. item .. '<br/>'
            if i % columns == 0 or i == itemCount then
                output = output .. '</div>' -- Schließen der aktuellen Spalte
            end
        end
        output = output .. '</div>'
        return output
    else
        return content -- Wenn die Anzahl der Elemente unter dem Schwellenwert liegt, wird der Inhalt unverändert zurückgegeben
    end
end

return p