Modul:Vägskyltar
Dokumentationen för denna modul kan skapas på Modul:Vägskyltar/dok
local p = {}
require "mw.ustring"
--[[
Vagnummerskylt, genererar kod för vägskylt med nummer
Skyltarna länkar automatiskt till artikeln för respektive väg (gäller endast Europavägar, Riksvägar och Länsvägar med nummer lägre än 500.
parametrar
==========
1 (typ):
- E för europaväg
- <tom> för väg med nummer under 500
- <länsbokstav> för vägar med nummer 500 eller högre (denna funktion är inte implementerad än)
- alt för en omledningsvägnummerskylt (blå text mot vit botten).
2 (nr): vägens nummer
höjd: (frivillig) antal px, om inget värde anges blir höjden 17px
länk: (frivillig) länk som bilden ska länka till, om länk ej anges fås en länk till Europaväg, Riksväg respektive Länsväg automatiskt
]]
function p.Vagnummerskylt(frame)
local typ= frame.args[1] or ''
local nr = frame.args[2] or ''
local hojd = frame.args['höjd'] or '17'
local link = frame.args['länk'] or ''
--color
local color = 'blå'
if (typ == 'E') then color = 'grön' end
if (typ == 'alt') then color = 'white' end
--link
if (link ~= '') then
link = '|länk=' .. link
else
link = '|länk=' -- ingen länk för sekundära länsvägar
if ((tonumber(nr) or 999) < 500) then link = '|länk=Länsväg ' .. nr end
if ((tonumber(nr) or 999) < 100) then link = '|länk=Riksväg ' .. nr end
if (typ == 'E') then link = '|länk=E' .. nr end
if (mw.ustring.sub(nr,1,1) == 'E') then link = '|länk=' .. nr end
end
--files
local res = '[[Fil:Vänster - ' .. color .. '.svg|500x' .. hojd .. 'px|länk=]]'
if (typ == 'E') then res = res .. '[[Fil:E - grön.svg|500x' .. hojd .. 'px|länk=]]' end
for i = 1, string.len(nr) do
res = res .. '[[Fil:' .. mw.ustring.sub(nr..'',i,i) .. ' - ' .. color .. '.svg|500x' .. hojd .. 'px|länk=]]'
end
res = res .. '[[Fil:Höger - ' .. color .. '.svg|500x' .. hojd .. 'px' .. link .. ']]'
return res
end
--[[
Avfartnummerskylt, genererar kod för avfartsskylt med nummer
parametrar
==========
1 (nr): avfartens nummer
länk: (frivillig) länk till önskad artikel
höjd: (frivillig) antal px, om inget värde anges blir höjden 17px
]]
function p.Avfartnummerskylt(frame)
local nr = frame.args[1] or ''
local link = frame.args['länk'] or ''
local hojd = frame.args['höjd'] or '17'
local res = '[[Fil:Avfart - gul.svg|500x' .. hojd .. 'px|länk=' .. link .. ']]'
for i = 1, string.len(nr) do
res = res .. '[[Fil:' .. mw.ustring.sub(nr..'',i,i) .. ' - gul.svg|500x' .. hojd .. 'px|länk=' .. link .. ']]'
end
res = res .. '[[Fil:Höger - gul.svg|500x' .. hojd .. 'px|länk=' .. link .. ']]'
return res
end
return p