Moduł zawiera zestaw funkcji związanych z kategoryzacją artykułów.

Funkcja Przeznaczenie Zapis Opis parametrów
klucz Wyznacza klucz sortowania w kategorii {{#invoke:Kategoria|klucz|data|tytuł}}
  1. data - data napisania artykułu
  2. tytuł – tytuł artykułu

Funkcje edytuj

klucz edytuj

Parametry
  1. data (pozycyjny)
  2. tytuł (pozycyjny)
Wartość zwracana

Funkcja generuje klucz sortowania o postaci *####: tytuł. Fragment oznaczony jako #### jest generowany na podstawie daty, w taki sposób aby późniejsza data owocowała wcześniejszym wystąpieniem artykułu w kategorii. Każda liczba w dacie jest zastępowana na literę według wzorca: 0 → Z, 1 → Y, 2 → X, ..., 9 → Q.


--[[
	Ten moduł realizuje funkcje związane z kategoryzacją artykułów.
]]

local p = {}

--[[
	Funkcja zwraca klucz sortowania artykułu na podstawie daty napisania i tytułu.
	Klucze są dobierane w taki sposób, aby artykuły były sortowane od najnowszych.
	Parametry (oba pozycyjne): [1]: data (format YYYY-MM-DD); [2]: tytuł
]]
function p.klucz(frame)
	local d = frame.args[1]
	local t = frame.args[2]
	
	-- Litery dobrane w taki sposób, aby sortwanie było odwrotne, tj. np. 2 > 8
	local replacements = {
		["0"] = "Z",
		["1"] = "Y",
		["2"] = "X",
		["3"] = "W",
		["4"] = "V",
		["5"] = "U",
		["6"] = "T",
		["7"] = "S",
		["8"] = "R",
		["9"] = "Q"
	}
	
	-- Zamień datę na kod literowy (w efekcie odwraca sortowanie)
	d = d:gsub("(%d)", replacements)
	
	return "*"..d..": "..t
end

return p