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 S.A. Julio (talk | contribs) at 20:01, 18 November 2018 (Undid revision 869463034 by BrownHairedGirl (talk) template broken: Lua error in Module:Navseasoncats/navyear at line 24: attempt to compare nil with number.). 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)
	local arg1 = frame.args[1]
	local arg2 = tonumber(frame.args[2])
	local arg3 = frame.args[3]
	local arg4 = tonumber(frame.args[4])
	if arg4 == nil then arg4 = -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 then
				navyear = navyear..'*<span style="visibility:hidden">'..year..'</span>\n'
			else
				navyear = navyear..'*'..frame:expandTemplate{ title = 'LinkCatIfExists2', args = { arg1..' '..year..' '..arg3, year } }..'\n'
			end
		else
			navyear = navyear..'*<b>'..arg2..'</b>\n'
		end
		i = i + 1
	end
	return navyear..'|}'
end

return p