Module:Meanings of minor-planet names index element

From Wikipedia, the free encyclopedia

local p = {}

function p.page( frame )
	local args = frame:getParent().args
	local mompnum_from = args[1] or 1001
	local mompnum_to   = mompnum_from + 999
	local mompnum_k    = math.floor( (mompnum_from - 1)/1000 )
	local momp = 'Meanings of minor planet names: '..mompnum_from..'–'..mompnum_to --en dash
	local title = mw.title.new(momp)
	local pre = ''
	local mid = '[['..momp..'|'
	local large = frame:expandTemplate{ title = 'Large', args = { mompnum_k } }
	local small = frame:expandTemplate{ title = 'Small', args = { ',001' } }
	local post = large..small --i.e. '{{Large|'..mompnum_k..'}}{{Small|,001}}'
	if title.isRedirect then
		pre = 'style="background-color:#e2e2e2" | '
		local color = frame:expandTemplate{ title = 'Color', args = { '#999', post } }
		post = color --i.e. '{{Color|#999|'..post..'}}'
	end
	return pre..mid..post..']]'
end

return p