Module:NYC bus link: Difference between revisions
Appearance
Content deleted Content added
Epicgenius (talk | contribs) preliminary prose change |
m case insensitive city; error message for unrecognized city; fix prose; |
||
Line 5: | Line 5: | ||
function p.getLink(frame) |
function p.getLink(frame) |
||
local args = getArgs(frame); |
local args = getArgs(frame); |
||
⚫ | |||
local city; |
local city; |
||
args.city = args.city:lower(); |
|||
⚫ | |||
⚫ | |||
city = 'New York City bus'; |
city = 'New York City bus'; |
||
elseif ' |
elseif 'li' == args.city then |
||
city = 'Long Island bus'; |
city = 'Long Island bus'; |
||
elseif ' |
elseif 'nj' == args.city then |
||
city = 'New Jersey bus'; |
city = 'New Jersey bus'; |
||
else |
|||
return table.concat ({'<span style=\"font-size:100%; font-style:normal;\" class=\"error\">unexpected city: ', args.city, '</span>'}) |
|||
end |
end |
||
⚫ | |||
for _, name in ipairs (args) do |
for _, name in ipairs (args) do |
||
table.insert (result, table.concat ({'[[', name, ' (', city, ')|', name, ']]'})) |
table.insert (result, table.concat ({'[[', name, ' (', city, ')|', name, ']]'})) |
||
end |
end |
||
if ('yes' == args.prose) or ('y' == args.prose) then |
|||
⚫ | |||
⚫ | |||
local prose; |
|||
⚫ | |||
⚫ | |||
else |
else |
||
return table.concat (result, ', '); |
return table.concat (result, ', '); |
Revision as of 00:35, 9 July 2018
{{Module rating }}
Usage
This module can be used to call a comma-separated list of New York City area bus routes in the format [[''Route name'' (''city name'' bus)|''Route name'']]
.
{{#invoke:NYC bus link}}
require('Module:No globals');
local getArgs = require('Module:Arguments').getArgs
local p = {}
function p.getLink(frame)
local args = getArgs(frame);
local result = {};
local city;
args.city = args.city:lower();
if 'nyc' == args.city then
city = 'New York City bus';
elseif 'li' == args.city then
city = 'Long Island bus';
elseif 'nj' == args.city then
city = 'New Jersey bus';
else
return table.concat ({'<span style=\"font-size:100%; font-style:normal;\" class=\"error\">unexpected city: ', args.city, '</span>'})
end
for _, name in ipairs (args) do
table.insert (result, table.concat ({'[[', name, ' (', city, ')|', name, ']]'}))
end
if ('yes' == args.prose) or ('y' == args.prose) then
return mw.text.listToText (result);
else
return table.concat (result, ', ');
end
end
return p;