https://en.wikipedia.org/w/index.php?action=history&feed=atom&title=Module%3ALACMTA_icon%2Fsandbox
Module:LACMTA icon/sandbox - Revision history
2025-06-09T14:12:14Z
Revision history for this page on the wiki
MediaWiki 1.45.0-wmf.4
https://en.wikipedia.org/w/index.php?title=Module:LACMTA_icon/sandbox&diff=1001463139&oldid=prev
Jonesey95: Create sandbox version of Module:LACMTA icon
2021-01-19T20:02:10Z
<p>Create sandbox version of <a href="/wiki/Module:LACMTA_icon" title="Module:LACMTA icon">Module:LACMTA icon</a></p>
<p><b>New page</b></p><div>local getArgs = require('Module:Arguments').getArgs<br />
<br />
local p = {}<br />
<br />
local function makeInvokeFunction(funcName)<br />
-- makes a function that can be returned from #invoke, using<br />
-- [[Module:Arguments]].<br />
return function (frame)<br />
local args = getArgs(frame, {parentOnly = true})<br />
return p[funcName](args)<br />
end<br />
end<br />
<br />
local function colorboxLinked(color,text,link)<br />
return '[['..link..'|<span role="img" aria-label="'..text..'" style="border:1px solid darkgray;-ms-user-select:none;-webkit-user-select:none;user-select:none;background-color:'..color..'" title="'..text..'">&nbsp;&nbsp;&nbsp;&nbsp;</span>]]&nbsp;'<br />
end<br />
<br />
local function colorboxUnlinked(color)<br />
return '<span style="border:1px solid darkgray;-ms-user-select:none;-webkit-user-select:none;user-select:none;background-color:'..color..'">&nbsp;&nbsp;&nbsp;&nbsp;</span>&nbsp;'<br />
end<br />
<br />
local t1 = {<br />
['A Line'] = { 'blue line', 'blue', 'a line', 'line a', 'a', icon='img_circle', dab=true, },<br />
['B Line'] = { 'red line', 'red', 'b line', 'line b', 'b', icon='img_circle', dab=true, },<br />
['C Line'] = { 'green line', 'green', 'c line', 'line c', 'c', icon='img_circle', dab=true, }, <br />
['D Line'] = { 'purple line', 'purple', 'd line', 'line d', 'd', icon='img_circle', dab=true, },<br />
['E Line'] = { 'expo line', 'expo', 'e line', 'line e', 'e', icon='img_circle', dab=true, }, <br />
['G Line'] = { 'orange line', 'orange', 'g line', 'line g', 'g', icon='img_square', dab=true, }, <br />
['J Line'] = { 'silver line', 'silver', 'j line', 'line j', 'j', icon='img_square', dab=true, }, <br />
['Crenshaw/LAX Line'] = { 'crenshaw/lax line', 'crenshaw/lax', 'crenshaw line', 'crenshaw', 'k line', 'line k', 'k', icon='crenshaw', },<br />
['L Line'] = { 'gold line', 'gold', 'l line', 'line l', 'l', icon='img_circle', dab=true, }, <br />
['Harbor Transitway'] = { 'harbor transitway', 'harbor', color='#B8860B', icon='colorbox', },<br />
['El Monte Busway'] = { 'el monte busway', 'el monte', color='#B8AD93', icon='colorbox', },<br />
['Regional Connector Transit Corridor'] = { 'regional connector transit corridor', 'regional connector', 'regional', color='#604020', icon='colorbox', },<br />
}<br />
<br />
p.icon = makeInvokeFunction('_icon')<br />
<br />
function p._icon(args)<br />
local link<br />
local code = args[1] or ''<br />
local text = args[2]<br />
if text then text = '('..text..')' else text = '' end<br />
local showtext = args.showtext<br />
local alt<br />
for k, v in pairs(t1) do<br />
for _, name in ipairs(v) do<br />
if mw.ustring.lower(code) == name then<br />
if v.dab == true then<br />
if showtext then<br />
link = ''<br />
alt = 'alt='<br />
showtext = '[['..k..' (Los Angeles Metro)|'..k..']]'<br />
else<br />
link = k..' (Los Angeles Metro)'<br />
alt = k<br />
showtext = ''<br />
end<br />
else<br />
if showtext then<br />
link = ''<br />
alt = 'alt='<br />
showtext = '[['..k..']]&nbsp;'<br />
else<br />
link = k<br />
alt = k<br />
showtext = ''<br />
end<br />
end<br />
if v.icon == 'colorbox' then<br />
if showtext then<br />
return colorboxUnlinked(v.color)..showtext..text<br />
else<br />
return colorboxLinked(v.color,k,k)..text<br />
end<br />
elseif v.icon == 'crenshaw' then<br />
return '[[File:LACMTA_Circle_K_Line.svg|'..(args.size or 17)..'px|link='..link..'|'..alt..']]&nbsp;'..showtext..text<br />
elseif v.icon == 'img_circle' then<br />
return '[[File:LACMTA Circle '..k..'.svg|'..(args.size or 17)..'px|link='..link..'|'..alt..']]&nbsp;'..showtext..text<br />
elseif v.icon == 'img_square' then<br />
return '[[File:LACMTA Square '..k..'.svg|'..(args.size or 17)..'px|link='..link..'|'..alt..']]&nbsp;'..showtext..text<br />
end<br />
end<br />
end<br />
end<br />
return colorboxLinked('#fff',code..' Line',code..' Line (Los Angeles Metro)')..text<br />
end<br />
<br />
return p</div>
Jonesey95