Zuletzt bearbeitet vor 3 Monaten
von Xineohp1506

RezeptBerechnung

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

local p = {}

function p.calculateIngredients(frame)
    local persons = tonumber(frame.args["persons"]) or 1
    local result = "== Angepasste Zutaten für " .. persons .. " Person(en) ==\n"
    
    local group = nil
    for i = 1, 100 do
        local newGroup = frame.args["ingredient" .. i .. "group"]
        local name = frame.args["ingredient" .. i .. "name"]
        local quantity = tonumber(frame.args["ingredient" .. i .. "quantity"])
        local unit = frame.args["ingredient" .. i .. "unit"]
        
        if name then  -- Nur wenn eine Zutat definiert ist, wird sie verarbeitet
            -- Wenn eine neue Gruppe definiert ist, füge den Gruppennamen hinzu
            if newGroup and newGroup ~= group then
                group = newGroup
                result = result .. "\n=== " .. group .. " ===\n"
            end

            -- Berechne die Menge basierend auf der Personenanzahl
            if quantity and unit then
                local newQuantity = quantity * persons
                result = result .. "* " .. name .. ": " .. newQuantity .. " " .. unit .. "\n"
            end
        end
    end

    return result
end

return p