Module:Routelist bottom
Revision as of 14:33, 5 October 2021 by Wikipedia>MusikBot II (Protected "Module:Routelist bottom": High-risk template or module: 315 transclusions (more info) ([Edit=Require autoconfirmed or confirmed access] (indefinite)))
This module is rated as beta, and is ready for widespread use. It is still new and should be used with some caution to ensure the results are as expected. |
This module depends on the following other modules: |
This module uses TemplateStyles: |
Usage
{{#invoke:Routelist bottom|function_name}}
local p = {}
local types = mw.loadData("Module:Road data/RJL types")
local row
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)
local legend = row:tag('div')
:addClass('routelist-bottom-legend hlist')
:tag('ul')
for k,v in ipairs(key) do
local type = types[v]
if type then
legend
:tag('li')
:tag('span')
:css('background-color', type.color)
:wikitext(" ")
:done()
:wikitext(" ")
:wikitext(type.routelist)
end
end
end
function p._bottom(args)
local root = mw.html.create('tr'):addClass('sortbottom')
row = root:tag('td')
row:attr('colspan', '9')
:addClass('routelist-bottom')
-- we would prefer to add the TemplateStyles before the class is declared
-- but that's not really feasible in this particular table context
:wikitext(mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Routelist bottom/styles.css' }
})
local conversion
if (args.conv or 'no') == 'yes' then
conversion = "1.000 mi = 1.609 km; 1.000 km = 0.621 mi<br>"
end
row:wikitext(conversion)
local key = parameterParser(args)
if key[1] then createLegend(key) end
if #row.nodes == 0 then
return '|-\n|}'
else
return tostring(root) .. '\n|-\n|}'
end
end
function p.bottom(frame)
return p._bottom(require('Module:Arguments').getArgs(frame))
end
return p