Module:Jctbtm/sandbox: Difference between revisions
Appearance
Content deleted Content added
sync + module:List change |
woops |
||
Line 16: | Line 16: | ||
return keys |
return keys |
||
end |
end |
||
local function createLegend(key, html_object) |
|||
local listargs = { |
|||
class = 'jct-bottom-legend' |
|||
} |
|||
for _,v in ipairs(key) do |
|||
local type = types[v] |
|||
if type then |
|||
table.insert( |
|||
listargs, |
|||
'<span class="jct-bottom-legend-color" style="background-color: ' .. |
|||
type.color .. '"> </span> <span class="nowrap">' .. |
|||
type.jctbtm .. '</span>' |
|||
) |
|||
end |
|||
end |
|||
html_object:wikitext(require('Module:List').horizontal(listargs)) |
|||
end |
|||
function p._jctbtm(args) |
function p._jctbtm(args) |
Latest revision as of 04:39, 27 December 2022
![]() | This is the module sandbox page for Module:Jctbtm (diff). |
![]() | This Lua module is used on approximately 16,000 pages and changes may be widely noticed. Test changes in the module's /sandbox or /testcases subpages, or in your own module sandbox. Consider discussing changes on the talk page before implementing them. |
![]() | This module depends on the following other modules: |
![]() | This module uses TemplateStyles: |
This module implements the {{Jctbtm}} template. Please see the template page for usage instructions.
Usage
[edit]{{#invoke:Jctbtm|jctbtm}}
Tracking/maintenance category
[edit]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 = types[v]
if type then
table.insert(
listargs,
'<span class="jct-bottom-legend-color" style="background-color: ' ..
type.color .. '"> </span> <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 columns[args[1]] 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 mi = 1.609 km; 1.000 km = 0.621 mi<br>")
end
local key = parameterParser(args)
if key[1] 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