Modul:Briefspielnews: Unterschied zwischen den Versionen

Aus GaretienWiki
Zur Navigation springen Zur Suche springen
VolkoV (D | B)
Keine Bearbeitungszusammenfassung
VolkoV (D | B)
Keine Bearbeitungszusammenfassung
Zeile 12: Zeile 12:
.."|?Reihe ist"
.."|?Reihe ist"
.."|?Kapiteldatum"
.."|?Kapiteldatum"
.."|limit=500"
.."|limit=10"
.."|order=desc"
.."|order=desc"
.."|sort=Kapiteldatum"
.."|sort=Kapiteldatum"
Zeile 26: Zeile 26:
function ausgabe(kapitel)
function ausgabe(kapitel)
     local result=""
     local result=""
    local reihe={}
     local tkeys=getSortKeys(kapitel)
     local tkeys=getSortKeys(kapitel)
   
for _,k in ipairs(tkeys) do
for _,k in ipairs(tkeys) do
        result=result.."\n*"..kapitel[k][1]
local r=kapitel[k]["Reihe ist"]
if reihe[r]~=nil then
reihe[r]={}
end
table.insert(reihe[r],kapitel[k])
end
end
result=result..dump(kapitel,"")
result=result..dump(reihe,"")
return result
return result

Version vom 5. Oktober 2024, 05:49 Uhr

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

require("Modul:Hilfsfunktionen")
require("Modul:Text")

local p = {}

--Hole die 500 neuesten Kapitel
function holeKapitel()
	local kapitel=mw.smw.ask("{{#ask: [[-has subobject::+]]"
		.."|?#-="
		.."|?Kurzbeschreibung#="
		.."|?Kapitelname ist"
		.."|?Reihe ist"
		.."|?Kapiteldatum"
		.."|limit=10"
		.."|order=desc"
		.."|sort=Kapiteldatum"
		.."|offset=0"
		.."|searchlabel=")
	if kapitel==nil then
		return {}
	end
	return kapitel
end

--Formatierung der Ausgabe
function ausgabe(kapitel)
    local result=""
    local reihe={}

    local tkeys=getSortKeys(kapitel)
	for _,k in ipairs(tkeys) do
		local r=kapitel[k]["Reihe ist"]
		if reihe[r]~=nil then
			reihe[r]={}
		end
		table.insert(reihe[r],kapitel[k])
	end
	
	result=result..dump(reihe,"")
	
	return result
end

--Aufzurufende Funktion
function p.news(frame)
	local kapitel=holeKapitel()
	return ausgabe(kapitel)
end

return p