Moduł:Lista newsów

Z Nonsensopedii, polskiej encyklopedii humoru
Wersja z dnia 11:34, 26 sie 2021 autorstwa Eksekk (dyskusja • edycje) (nowa strona)
(różn.) ← przejdź do poprzedniej wersji • przejdź do aktualnej wersji (różn.) • przejdź do następnej wersji → (różn.)

Dokumentacja dla tego modułu może zostać utworzona pod nazwą Moduł:Lista newsów/opis

local p = {}
function p.list(frame)
	local day = frame.args[1]
	local eyear = frame.args[2]
	local query = mw.smw.ask{"[[NonNews:+]] [[Ma dzień::" .. day .. "]]", "?Ma dzień=dzień", "?Ma miesiąc=miesiąc", "?Ma rok=rok", limit = 500}
	if query then
		local map = {}
		for k, v in pairs(query) do
			--[[
			mw.log(k)
			mw.logObject(v)
			--]]
			
			map[v.rok] = map[v.rok] or {}
			table.insert(map[v.rok], v)
			
			local wikitext = ""
			for i = 2005, eyear do
				if #(map[i] or {}) ~= 0 then
					wikitext = wikitext .. "'''" .. i .. "'''\n"
					for k, v in pairs(map[i]) do
						wikitext = wikitext .. "* " .. v[1] .. "\n"
					end
				end
			end
			mw.log(wikitext)
			return frame:preprocess(wikitext)
		end
	else
		mw.log("Błąd w zapytaniu SMW")
		return mw.smw.info('Błąd w zapytaniu SMW w module "Lista newsów z danego dnia".', 'error')
	end
end

return p