Modül:Yıla göre konu

Modül belgelemesi[oluştur]
local function ek_bul(sayi)
	local ek = "de"
	local mod10 = math.fmod(sayi, 10)
	
	if mod10 == 0 then
		local mod100 = math.fmod(sayi, 100)
		
		if (mod100 == 10 or mod100 == 30 or mod100 == 90) then
			ek = "da"
		elseif (mod100 == 40 or mod100 == 60) then
			ek = "ta"
		elseif mod100 == 70 then
			ek = "te"
		end
	else
		if (mod10 == 3 or mod10 == 4 or mod10 == 5) then
			ek = "te"
		elseif (mod10 == 6 or mod10 == 9) then
			ek = "da"
		end
	end
	
	return ek

end

local function tablo(frame, moduleArgs)
	-- parametre tanımlayıcı
	local args = frame and frame:getParent().args or nil
	
	local tablo = "{| class='infobox hlist'\n"
	tablo = tablo .. "! style='font-size:larger;' |\n"
	tablo = tablo .. "{| style='width:100%'\n"
	tablo = tablo .. "| style='text-align:center' | [[:Kategori:Yıla göre " .. 
					 args[2] .. "|Yıla göre " .. args[2] .. "]]\n"
	tablo = tablo .. "|}\n"

	tablo = tablo .. "|-\n"
	tablo = tablo .. "| style='text-align:center' |\n"
	
	local yil = tonumber(args[1])
	
	-- 5 yıl önceden 5 yıl sonraya
	for i = -5, 5
	do
		if i == 0 then
			tablo = tablo .. "* " .. "'''" .. yil .. "'''\n"
		else
			y = yil + i
			tablo = tablo .. "* [[" .. y .. "'" .. ek_bul(y) .. 
					" " .. args[2] .. "|" .. y .. "]]\n"
		end
	end
	
    -- diğer konular
	tablo = tablo .. "|-\n"
	tablo = tablo .. "| style='text-align:center' |\n"
	
	local konular = {"bilim", "edebiyat", "mimarlık", "müzik", "sanat"}
	
	for k, v in pairs(konular)
	do
		if args[2] ~= v then
			tablo = tablo .. "* [[" .. yil .. "'" .. ek_bul(yil) ..
					" " .. v .. "|" .. v:gsub("^%l", string.upper) .. "]]\n"
		end
	end
	
	tablo = tablo .. "|}"

	return tablo
end

return {
	tablo = tablo
}