Zuletzt bearbeitet vor 32 Minuten
von Xineohp1506

Modul:Publikation/Helper: Unterschied zwischen den Versionen

(Die Seite wurde neu angelegt: „local p = {} -- Funktion zur Extraktion des Seitentitels einer Serie function p.getSeriesPageTitle(seriesID) if not mw.smw then return "Semantic MediaWiki-Erweiterung nicht gefunden." end local query = "SerienID::" .. seriesID .. "|limit=1" local result = mw.smw.getQueryResult({query = query}) if not result or not result.results or not result.results[1] then return "Keine Serienseite gefunden." end retur…“)
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
local p = {}
local helper = {}


-- Funktion zur Extraktion des Seitentitels einer Serie
-- Funktion zur Extraktion des Seitentitels einer Serie
function p.getSeriesPageTitle(seriesID)
function helper.getSeriesPageTitle(seriesID)
     if not mw.smw then
     if not mw.smw then
         return "Semantic MediaWiki-Erweiterung nicht gefunden."
         return "Semantic MediaWiki-Erweiterung nicht gefunden."
Zeile 18: Zeile 18:


-- Funktion zur Extraktion der Gesamtbände einer Serie anhand des Seitentitels
-- Funktion zur Extraktion der Gesamtbände einer Serie anhand des Seitentitels
function p.getCompleteVolumesByTitle(seriesPageTitle)
function helper.getCompleteVolumesByTitle(seriesPageTitle)
     if not mw.smw then
     if not mw.smw then
         return "Semantic MediaWiki-Erweiterung nicht gefunden."
         return "Semantic MediaWiki-Erweiterung nicht gefunden."
Zeile 39: Zeile 39:
end
end


return p
return helper

Version vom 22. November 2024, 19:03 Uhr

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

local helper = {}

-- Funktion zur Extraktion des Seitentitels einer Serie
function helper.getSeriesPageTitle(seriesID)
    if not mw.smw then
        return "Semantic MediaWiki-Erweiterung nicht gefunden."
    end

    local query = "[[SerienID::" .. seriesID .. "]]|limit=1"
    local result = mw.smw.getQueryResult({query = query})

    if not result or not result.results or not result.results[1] then
        return "Keine Serienseite gefunden."
    end

    return result.results[1].fulltext
end

-- Funktion zur Extraktion der Gesamtbände einer Serie anhand des Seitentitels
function helper.getCompleteVolumesByTitle(seriesPageTitle)
    if not mw.smw then
        return "Semantic MediaWiki-Erweiterung nicht gefunden."
    end

    local query = "[[" .. seriesPageTitle .. "]]|?Complete volumes|limit=1"
    local result = mw.smw.ask(query)

    if not result then
        return "Keine Ergebnisse gefunden."
    end

    for title, data in pairs(result) do
        if data["Complete volumes"] then
            return tostring(data["Complete volumes"])
        end
    end

    return "Keine Gesamtbände gefunden."
end

return helper