Zuletzt bearbeitet vor einem Tag
von Xineohp1506

Modul:Publikation/Buch: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 5: Zeile 5:


-- Funktion zur Extraktion der Gesamtbände aus der Serien-ID
-- Funktion zur Extraktion der Gesamtbände aus der Serien-ID
function buch.getCompleteVolumes(seriesID)
function buch.getCompleteVolumes(frame)
     if not mw.smw then
     if not mw.smw then
         return "Semantic MediaWiki-Erweiterung nicht gefunden."
         return "Semantic MediaWiki-Erweiterung nicht gefunden."
     end
     end


     if not seriesID or seriesID == "" then
    -- Überprüfung auf leere Parameter
         return "Keine Serien-ID angegeben."
     if frame.args[1] == nil then
         return "Keine Abfrageparameter gefunden."
     end
     end


     -- Abfrage vorbereiten (ohne Einschränkungen auf Complete volumes)
     -- Abfrage ausführen
     local query = { ["[[SerienID::" .. seriesID .. "]]"] = "" } -- Keine spezielle Ausgabeanweisung
     local queryResult = mw.smw.getQueryResult(frame.args)


     -- Abfrage ausführen
     -- Kein Ergebnis
     local queryResult = mw.smw.getQueryResult(query)
     if queryResult == nil then
    if not queryResult or not queryResult.results then
         return "Keine Ergebnisse gefunden."
         return "Keine Ergebnisse gefunden."
     end
     end


     -- **DEBUG** Rohdaten als <pre>-Block ausgeben
     -- Rückgabe der kompletten Datenstruktur
    local debugOutput = mw.dumpObject(queryResult)
     return "<pre>" .. mw.dumpObject(queryResult) .. "</pre>"
     return "<pre>" .. debugOutput .. "</pre>"
end
end



Version vom 21. November 2024, 21:31 Uhr

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

local smw = require('Module:SMW')
local getArgs = require('Module:Arguments').getArgs

local buch = {}

-- Funktion zur Extraktion der Gesamtbände aus der Serien-ID
function buch.getCompleteVolumes(frame)
    if not mw.smw then
        return "Semantic MediaWiki-Erweiterung nicht gefunden."
    end

    -- Überprüfung auf leere Parameter
    if frame.args[1] == nil then
        return "Keine Abfrageparameter gefunden."
    end

    -- Abfrage ausführen
    local queryResult = mw.smw.getQueryResult(frame.args)

    -- Kein Ergebnis
    if queryResult == nil then
        return "Keine Ergebnisse gefunden."
    end

    -- Rückgabe der kompletten Datenstruktur
    return "<pre>" .. mw.dumpObject(queryResult) .. "</pre>"
end

-- Hauptfunktion für die Buchdarstellung
function buch.render(args, helper)
    local seriesID = args["Hat Serie"] or ""
    local band = args["Band"] or ""

    -- **DEBUG** Serien-ID anzeigen
    local debugOutput = "Serien-ID: " .. (seriesID ~= "" and seriesID or "Keine Serien-ID angegeben") .. "\n"

    -- **DEBUG** Prüfen, ob buch.getCompleteVolumes aufgerufen wird
    local completeVolumes = buch.getCompleteVolumes(seriesID)
    debugOutput = debugOutput .. "Aufruf getCompleteVolumes mit Serien-ID: " .. seriesID .. "\n"

    -- Ausgabe der Bände
    local bandOutput = "Band " .. band
    if completeVolumes and completeVolumes ~= "" then
        bandOutput = bandOutput .. " von " .. completeVolumes
    else
        bandOutput = bandOutput .. " (Keine Gesamtbände gefunden)"
    end

    -- Ergebnis zurückgeben
    return debugOutput .. "Ergebnis Band-Ausgabe: " .. bandOutput
end


return buch