Keine Bearbeitungszusammenfassung Markierung: Zurückgesetzt |
Keine Bearbeitungszusammenfassung Markierungen: Manuelle Zurücksetzung Zurückgesetzt |
||
Zeile 7: | Zeile 7: | ||
output = output .. string.format('<p>Projektname (clean): %s</p>\n', cleanProjektname or "Nicht angegeben") | output = output .. string.format('<p>Projektname (clean): %s</p>\n', cleanProjektname or "Nicht angegeben") | ||
if not cleanProjektname or cleanProjektname == "" then | |||
return "Kein Projekt angegeben." | |||
end | |||
-- Abfrage-String erstellen | |||
local query = string.format( | |||
"[[LPON:Projekt::%s]][[LPON:Typ::Episode]]|?LPON:Episodennummer|?LPON:Episodentitel|?LPON:Veröffentlichungsdatum|?LPON:Spieler|?LPON:VOD-Link", | |||
cleanProjektname | |||
) | |||
local queryResult = mw.smw.getQueryResult(query) | |||
if not queryResult or not queryResult.results then | |||
return "Keine Folgen für dieses Projekt gefunden." | |||
end | |||
output = output .. string.format('<p>Abfrage: %s</p>\n', query) | |||
-- Inhalte generieren | |||
local output = '<h2>Episodenübersicht</h2>\n' | |||
output = output .. '<ul>\n' | |||
for _, result in ipairs(queryResult.results) do | |||
local episodeNumber = result.printouts["LPON:Episodennummer"] and result.printouts["LPON:Episodennummer"][1] or "0" | |||
local episodeTitle = result.printouts["LPON:Episodentitel"] and result.printouts["LPON:Episodentitel"][1] or "Ohne Titel" | |||
local releaseDate = result.printouts["LPON:Veröffentlichungsdatum"] and result.printouts["LPON:Veröffentlichungsdatum"][1] or "Unbekannt" | |||
local players = result.printouts["LPON:Spieler"] and table.concat(result.printouts["LPON:Spieler"], ", ") or "Unbekannt" | |||
local vodLink = result.printouts["LPON:VOD-Link"] and result.printouts["LPON:VOD-Link"][1] or "Kein Link" | |||
output = output .. string.format( | |||
'<li><b>Nr.:</b> %s, <b>Titel:</b> %s, <b>Spieler:</b> %s, <b>Datum:</b> %s, <b>VOD:</b> [%s Link]</li>\n', | |||
episodeNumber, | |||
episodeTitle, | |||
players, | |||
releaseDate, | |||
vodLink | |||
) | |||
end | |||
output = output .. '</ul>\n' | |||
return output | return output | ||
end | end | ||
return episodeOutput | return episodeOutput |
Version vom 18. Dezember 2024, 12:20 Uhr
Die Dokumentation für dieses Modul kann unter Modul:LPON/EpisodeOutput/Doku erstellt werden
local episodeOutput = {}
local helper = require('Module:LPON/Helper')
function episodeOutput.debugInside(cleanProjektname)
local output = '<h2>Debugging-Ausgabe</h2>\n'
output = output .. string.format('<p>Projektname (clean): %s</p>\n', cleanProjektname or "Nicht angegeben")
if not cleanProjektname or cleanProjektname == "" then
return "Kein Projekt angegeben."
end
-- Abfrage-String erstellen
local query = string.format(
"[[LPON:Projekt::%s]][[LPON:Typ::Episode]]|?LPON:Episodennummer|?LPON:Episodentitel|?LPON:Veröffentlichungsdatum|?LPON:Spieler|?LPON:VOD-Link",
cleanProjektname
)
local queryResult = mw.smw.getQueryResult(query)
if not queryResult or not queryResult.results then
return "Keine Folgen für dieses Projekt gefunden."
end
output = output .. string.format('<p>Abfrage: %s</p>\n', query)
-- Inhalte generieren
local output = '<h2>Episodenübersicht</h2>\n'
output = output .. '<ul>\n'
for _, result in ipairs(queryResult.results) do
local episodeNumber = result.printouts["LPON:Episodennummer"] and result.printouts["LPON:Episodennummer"][1] or "0"
local episodeTitle = result.printouts["LPON:Episodentitel"] and result.printouts["LPON:Episodentitel"][1] or "Ohne Titel"
local releaseDate = result.printouts["LPON:Veröffentlichungsdatum"] and result.printouts["LPON:Veröffentlichungsdatum"][1] or "Unbekannt"
local players = result.printouts["LPON:Spieler"] and table.concat(result.printouts["LPON:Spieler"], ", ") or "Unbekannt"
local vodLink = result.printouts["LPON:VOD-Link"] and result.printouts["LPON:VOD-Link"][1] or "Kein Link"
output = output .. string.format(
'<li><b>Nr.:</b> %s, <b>Titel:</b> %s, <b>Spieler:</b> %s, <b>Datum:</b> %s, <b>VOD:</b> [%s Link]</li>\n',
episodeNumber,
episodeTitle,
players,
releaseDate,
vodLink
)
end
output = output .. '</ul>\n'
return output
end
return episodeOutput