Module:Id increment

From Visual Data Wiki
Jump to navigation Jump to search

Documentation for this module may be created at Module:Id increment/doc

-- Funktion, um die höchste Zahl in der Struktur "Projekt/1", "Projekt/2", usw. zu finden
function findMaxProjectNumber()
    local maxNumber = 0

    -- Abfrage an die Datenbank (MediaWiki-Standardtabelle 'page')
    local result = mw.site.stats.pagesInCategory({
        title = "Projekt",
        namespace = 0
    })

    -- Überprüfe das Ergebnis
    for _, page in ipairs(result.pages) do
        local _, _, number = string.find(page.title, "Projekt/(%d+)")
        
        -- Überprüfe, ob eine Zahl gefunden wurde
        if number then
            local currentNumber = tonumber(number)
            maxNumber = math.max(maxNumber, currentNumber)
        end
    end

    return maxNumber
end

-- Beispielaufruf der Funktion
local maxNumber = findMaxProjectNumber()
local nextNumber = maxNumber + 1

-- Gib die nächste verfügbare Nummer aus
print("Die nächste verfügbare Projekt-ID ist: Projekt/" .. nextNumber)