Zuletzt bearbeitet vor 2 Monaten
von Xineohp1506

Modul:LPON/Episode: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 12: Zeile 12:


     -- DISPLAYTITLE setzen
     -- DISPLAYTITLE setzen
     helper.setDisplayTitle({title = projectName .. args["Titel"]})
     helper.setDisplayTitle({title = projectName .. ' ' .. args["Titel"]})
       
      
      
     -- Semantische Attribute setzen
     -- Semantische Attribute setzen
Zeile 25: Zeile 24:
     helper.setProperty({args = {["LPON:ID"] = args["ID"]}})
     helper.setProperty({args = {["LPON:ID"] = args["ID"]}})


    -- EmbedVideo generieren
-- EmbedVideo generieren
    if args["Service"] and args["ID"] then
if args["Service"] and args["ID"] then
    local embedVideo = "{{#ev:" .. args["Service"] .. "|" .. args["ID"] .. "|640|center||" .. (args["Titel"] or "Video") .. "}}"
    local embedVideo = "{{#ev:" .. args["Service"] .. "|" .. args["ID"] .. "|640|center||" .. (args["Titel"] or "Video") .. "}}"
    output = output .. frame:preprocess(embedVideo) .. "\n"
    output = output .. '<div class="lpnon-video-container">\n'
    output = output .. frame:preprocess(embedVideo) .. "\n"
    output = output .. '</div>\n'
else
else
    output = output .. "<p>Keine Video-ID oder Service angegeben.</p>"
    output = output .. '<div class="lpnon-video-container"><p>Keine Video-ID oder Service angegeben.</p></div>\n'
end
end
 
    -- Ausgabe der Episodendetails
-- Ausgabe der Episodendetails
    output = output .. '<div class="lpnon-episode-details">'
output = output .. '<div class="lpnon-episode-details">\n'
    output = output .. string.format("; '''Titel''': %s\n", args["Titel"] or "Unbekannt")
output = output .. '<h2>Details</h2>\n'
    output = output .. string.format("; '''Episodennummer''': %s\n", args["Episodennummer"] or "Unbekannt")
output = output .. '<ul>\n'
    output = output .. string.format("; '''Veröffentlichungsdatum''': %s\n", args["Veröffentlichungsdatum"] or "Unbekannt")
output = output .. string.format('<li><b>Titel:</b> %s</li>\n', args["Titel"] or "Unbekannt")
    output = output .. string.format("; '''Spieler''': %s\n", args["Spieler"] or "Unbekannt")
output = output .. string.format('<li><b>Episodennummer:</b> %s</li>\n', args["Episodennummer"] or "Unbekannt")
    output = output .. string.format("; '''Beschreibung''': %s\n", args["Beschreibung"] or "Keine Beschreibung verfügbar")
output = output .. string.format('<li><b>Veröffentlichungsdatum:</b> %s</li>\n', args["Veröffentlichungsdatum"] or "Unbekannt")
    output = output .. '</div>'
output = output .. string.format('<li><b>Spieler:</b> %s</li>\n', args["Spieler"] or "Unbekannt")
output = output .. string.format('<li><b>Beschreibung:</b> %s</li>\n', args["Beschreibung"] or "Keine Beschreibung verfügbar")
output = output .. '</ul>\n'
output = output .. '</div>\n'


     return output
     return output

Version vom 16. Dezember 2024, 22:16 Uhr

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

local episode = {}
local helper = require('Module:LPON/Helper')

function episode.render(frame)
    local args = require('Module:Arguments').getArgs(frame)
    local projectName = args["Projekt"]
    if not projectName or projectName == "" then
        return "Kein Projektname angegeben."
    end
    local cleanProjektname = helper.cleanString(projectName)
    local output = ""

    -- DISPLAYTITLE setzen
    helper.setDisplayTitle({title = projectName .. ' ' .. args["Titel"]})
    
    -- Semantische Attribute setzen
    helper.setProperty({args = {["LPON:Episodennummer"] = args["Episodennummer"]}})
    helper.setProperty({args = {["LPON:Veröffentlichungsdatum"] = args["Veröffentlichungsdatum"]}})
    helper.setProperty({args = {["LPON:Episodentitel"] = args["Titel"]}})
    helper.setProperty({args = {["LPON:Spieler"] = args["Spieler"]}})
    helper.setProperty({args = {["LPON:Beschreibung"] = args["Beschreibung"]}})
    helper.setProperty({args = {["LPON:Projekt"] = cleanProjektname}})
    helper.setProperty({args = {["LPON:Service"] = args["Service"]}})
    helper.setProperty({args = {["LPON:ID"] = args["ID"]}})

	-- EmbedVideo generieren
	if args["Service"] and args["ID"] then
	    local embedVideo = "{{#ev:" .. args["Service"] .. "|" .. args["ID"] .. "|640|center||" .. (args["Titel"] or "Video") .. "}}"
	    output = output .. '<div class="lpnon-video-container">\n'
	    output = output .. frame:preprocess(embedVideo) .. "\n"
	    output = output .. '</div>\n'
	else
	    output = output .. '<div class="lpnon-video-container"><p>Keine Video-ID oder Service angegeben.</p></div>\n'
	end
	
	-- Ausgabe der Episodendetails
	output = output .. '<div class="lpnon-episode-details">\n'
	output = output .. '<h2>Details</h2>\n'
	output = output .. '<ul>\n'
	output = output .. string.format('<li><b>Titel:</b> %s</li>\n', args["Titel"] or "Unbekannt")
	output = output .. string.format('<li><b>Episodennummer:</b> %s</li>\n', args["Episodennummer"] or "Unbekannt")
	output = output .. string.format('<li><b>Veröffentlichungsdatum:</b> %s</li>\n', args["Veröffentlichungsdatum"] or "Unbekannt")
	output = output .. string.format('<li><b>Spieler:</b> %s</li>\n', args["Spieler"] or "Unbekannt")
	output = output .. string.format('<li><b>Beschreibung:</b> %s</li>\n', args["Beschreibung"] or "Keine Beschreibung verfügbar")
	output = output .. '</ul>\n'
	output = output .. '</div>\n'

    return output
end

return episode