From Wikipedia, the free encyclopedia

local p = {}



local types = mw.loadData("Module:Road data/RJL types")



local columns = {   -- Constants for how many columns different list types should have.

	default = 6,    -- default

	exit = 7,       -- default + exit number

	old = 8,        -- default + exit number + old exit number

}



local function parameterParser(args)

	local keysParam = args.keys

	if not(keysParam) then return {} end

	local keys = mw.text.split(keysParam, ",")

	table.sort(keys)

	return keys

end



local function createLegend(key, html_object)

	local listargs = {

		class = 'jct-bottom-legend'

	}

	

	for _,v in ipairs(key) do

		local type = typesv

		if type then

			table.insert(

				listargs,

				'<span class="jct-bottom-legend-color" style="background-color: ' ..

				type.color .. '">&nbsp;&nbsp;&nbsp;&nbsp;</span>&nbsp;&nbsp;<span class="nowrap">' ..

				type.jctbtm .. '</span>'

			)

		end

	end

	

	html_object:wikitext(require('Module:List').horizontal(listargs))

end





function p._jctbtm(args)



	local root = mw.html.create()

	

	local cols = args.col or columnsargs1]] or columns.default

	row = root

		:tag('tr')

			:tag('td')

				:attr('colspan', cols)

				:addClass('jct-bottom')

				:wikitext(mw.getCurrentFrame():extensionTag{

					name = 'templatestyles', args = { src = 'Module:Jctbtm/styles.css' }

				})

					

	if (args.conv or 'yes') == 'yes' then

		row:wikitext("1.000&nbsp;mi = 1.609&nbsp;km; 1.000&nbsp;km = 0.621&nbsp;mi<br>")

	end

	

	local key = parameterParser(args)

	if key1 then createLegend(key, row) end

	

	local keyParam = args.key

	if keyParam then -- This is a deprecated parameter

		local page = mw.title.getCurrentTitle()

		local pagename = page.prefixedText

		row:wikitext(string.format("[[Category:Jctbtm temporary tracking category|# %s]]", pagename))

	end

	

	row:wikitext(args.notes or args.key) -- If additional notes are provided, display them.

	

	if #row.nodes == 0 then

		return '|-\n|}'

	else

		return tostring(root) .. '\n|-\n|}'

	end

end



function p.jctbtm(frame)

	return p._jctbtm(require('Module:Arguments').getArgs(frame))

end



return p