Jump to content

Module:Category series navigation/navyear

Permanently protected module
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by MusikAnimal (talk | contribs) at 21:20, 24 January 2019 (Protected "Module:Navseasoncats/navyear": High-risk module ([Edit=Require template editor access] (indefinite))). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

local p = {}

function p.navyear(frame)
	--Expects a PAGENAME of the form "Some sequential 2015 example cat", where 
	--	{{{1}}}=Some sequential
	--	{{{2}}}=2015
	--	{{{3}}}=example cat
	--	{{{4}}}=1758 ('min' year parameter; optional)
	--	{{{5}}}=1800 ('max' year parameter; optional)
	local arg1 = frame.args[1]
	local arg2 = tonumber(frame.args[2])
	local arg3 = frame.args[3]
	local arg4 = tonumber(frame.args[4])
	local arg5 = tonumber(frame.args[5])
	if arg4 == nil then arg4 = -9999 end
	if arg5 == nil then arg5 = 9999 end
	
	local navyear = '{| class="toccolours hlist" style="text-align: center; margin: auto;"\n'..'|\n'
	
	local i = -5
	while i <= 5 do
		local year = arg2 + i
		if i ~= 0 then
			if ((year >= arg4) and (year <= arg5)) then
				navyear = navyear..'*'..frame:expandTemplate{ title = 'LinkCatIfExists2', args = { arg1..' '..year..' '..arg3, year } }..'\n'
			else
				navyear = navyear..'*<span style="visibility:hidden">'..year..'</span>\n'
			end
		else
			navyear = navyear..'*<b>'..arg2..'</b>\n'
		end
		i = i + 1
	end
	return navyear..'|}'
end

return p