Zuletzt bearbeitet vor 4 Monaten
von Xineohp1506

Modul:LPON/Helper: Unterschied zwischen den Versionen

(Die Seite wurde neu angelegt: „local helper = {} local getArgs = require('Module:Arguments').getArgs -- Funktion zur Anpassung des DISPLAYTITLE über mw.ext.displaytitle function helper.setDisplayTitle(frame) local args = getArgs(frame) local title = args["title"] if title and title ~= "" then local success, err = pcall(function() mw.ext.displaytitle.set(title) end) if not success then mw.log("Fehler beim Setzen des DISPLAYT…“)
 
Keine Bearbeitungszusammenfassung
Zeile 57: Zeile 57:


     return output
     return output
end
function helper.cleanString(input)
    if not input or input == "" then
        return ""
    end
    return input
        :gsub("[:/]", "-")        -- Ersetzt ":" und "/" durch "-"
        :gsub("[%p%c]", "")      -- Entfernt andere Satzzeichen und Steuerzeichen
        :gsub("%s+", " ")        -- Reduziert mehrfache Leerzeichen auf eins
        :gsub("^%s*(.-)%s*$", "%1") -- Entfernt führende und abschließende Leerzeichen
end
end


return helper
return helper

Version vom 2. Dezember 2024, 20:56 Uhr

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

local helper = {}
local getArgs = require('Module:Arguments').getArgs

-- Funktion zur Anpassung des DISPLAYTITLE über mw.ext.displaytitle
function helper.setDisplayTitle(frame)
    local args = getArgs(frame)
    local title = args["title"]

    if title and title ~= "" then
        local success, err = pcall(function()
            mw.ext.displaytitle.set(title)
        end)
        if not success then
            mw.log("Fehler beim Setzen des DISPLAYTITLE: " .. tostring(err))
        end
    end
end

-- set with return results
function helper.setProperty( frame )
    if not mw.smw then
        return "mw.smw module not found"
    end

    local result = mw.smw.set( frame.args )
    if result == true then
        return
    else
        return 'An error occurred during the storage process. Message reads ' .. result.error
    end
end

-- Funktion zur Hinzufügung von Kategorien mit Sortkey
function helper.addCategories(frame)
    -- Argumente aus dem Frame extrahieren
    local args = getArgs(frame)

    -- Kategorienliste und Sortkey abrufen
    local categories = args["categories"] or {}
    local sortkey = args["sortkey"] or mw.title.getCurrentTitle().text -- Standard: Seitentitel als Sortkey

    -- Validierung der Kategorienliste
    if type(categories) == "string" then
        categories = mw.text.split(categories, ",") -- Kategorien können als kommaseparierte Liste übergeben werden
    end
    if type(categories) ~= "table" then
        return "Ungültige Kategorienliste."
    end

    -- Kategorienausgabe generieren
    local output = ""
    for _, category in ipairs(categories) do
        if category and category ~= "" then
            output = output .. "[[Kategorie:" .. category .. "|" .. sortkey .. "]]\n"
        end
    end

    return output
end

function helper.cleanString(input)
    if not input or input == "" then
        return ""
    end

    return input
        :gsub("[:/]", "-")        -- Ersetzt ":" und "/" durch "-"
        :gsub("[%p%c]", "")       -- Entfernt andere Satzzeichen und Steuerzeichen
        :gsub("%s+", " ")         -- Reduziert mehrfache Leerzeichen auf eins
        :gsub("^%s*(.-)%s*$", "%1") -- Entfernt führende und abschließende Leerzeichen
end

return helper