Module:Routelist bottom: Difference between revisions
Appearance
Content deleted Content added
m Remove notes |
m Fixing mw.html syntax |
||
Line 16: | Line 16: | ||
local function createLegend(key) |
local function createLegend(key) |
||
local format = mw.ustring.format |
local format = mw.ustring.format |
||
local legend = row |
local legend = row:tag('div'):attr('class', "hlist"):cssText("margin-left: 1.6em; text-align: center; font-size:90%;"):tag('ul') |
||
for k,v in ipairs(key) do |
for k,v in ipairs(key) do |
||
local type = types[v] |
local type = types[v] |
||
if type then |
if type then |
||
legend |
legend:tag('li'):tag('span'):css('border', '1px solid #000'):css('background-color', type.color):css('color', type.color):wikitext(" "):done():wikitext(" "):wikitext(type.routelist) |
||
end |
end |
||
end |
end |
||
Line 27: | Line 27: | ||
function p._bottom(args) |
function p._bottom(args) |
||
local root = mw.html.create('tr') |
local root = mw.html.create('tr') |
||
row = root |
row = root:tag('td') |
||
row |
row:attr('colspan', "9"):attr('class', "wikitable hlist"):css("text-align", "center"):css("background-color", "#f2f2f2") -- Define the footer. |
||
local conversion |
local conversion |
||
Line 35: | Line 35: | ||
conversion = "1.000 mi = 1.609 km; 1.000 km = 0.621 mi<br>" |
conversion = "1.000 mi = 1.609 km; 1.000 km = 0.621 mi<br>" |
||
end |
end |
||
row |
row:wikitext(conversion) |
||
local key = parameterParser(args) |
local key = parameterParser(args) |
Revision as of 06:35, 11 May 2014
![]() | 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 is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
![]() | 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 getArgs = require('Module:Arguments').getArgs -- Import module function to work with passed arguments
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 format = mw.ustring.format
local legend = row:tag('div'):attr('class', "hlist"):cssText("margin-left: 1.6em; text-align: center; font-size:90%;"):tag('ul')
for k,v in ipairs(key) do
local type = types[v]
if type then
legend:tag('li'):tag('span'):css('border', '1px solid #000'):css('background-color', type.color):css('color', type.color):wikitext(" "):done():wikitext(" "):wikitext(type.routelist)
end
end
end
function p._bottom(args)
local root = mw.html.create('tr')
row = root:tag('td')
row:attr('colspan', "9"):attr('class', "wikitable hlist"):css("text-align", "center"):css("background-color", "#f2f2f2") -- Define the footer.
local conversion
local conv = args.conv or 'no'
if conv == '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
local nodes = row.nodes
if #nodes == 0 then
return '|-\n|}'
else
return tostring(root) .. '\n|-\n|}'
end
end
function p.bottom(frame)
local args = getArgs(frame)
return p._bottom(args)
end
return p