Modul:Infobox: Skillnad mellan sidversioner
mIngen redigeringssammanfattning |
mIngen redigeringssammanfattning |
||
| Rad 43: | Rad 43: | ||
local output = {} | local output = {} | ||
local value = frame.args[1] | local value = frame.args[1] | ||
local value2 = frame.args[2] | local value2 = frame.args[2] | ||
local alignment = { | local alignment = { | ||
['ond'] = f.categoryLink( 'Onda figurer', vars.Pagename, 'Ond' ), | ['ond'] = f.categoryLink( 'Onda figurer', vars.Pagename, 'Ond' ), | ||
| Rad 50: | Rad 50: | ||
} | } | ||
if alignment[string.lower(value)] then | if alignment[string.lower(value)] then | ||
output = alignment[string.lower(value)] | |||
elseif mw.site.stats.pagesInCategory( | elseif mw.site.stats.pagesInCategory( | ||
f.firstToUpper(value) .. 'a figurer', 'pages' | f.firstToUpper(value) .. 'a figurer', 'pages' | ||
) > 0 then | ) > 0 then | ||
output = f.categoryLink( | |||
f.firstToUpper(value) .. 'a figurer', vars.Pagemane, value | f.firstToUpper(value) .. 'a figurer', vars.Pagemane, value | ||
) | ) | ||
else | else | ||
return | output = value | ||
end | |||
if value2 then | |||
return output .. ', ' .. value2 | |||
else | |||
return output | |||
end | end | ||
end | end | ||
Versionen från 31 oktober 2023 kl. 20.26
Dokumentationen för denna modul kan skapas på Modul:Infobox/dok
Skriptfel: Luafel: Internt fel: Tolken har avslutats med signalen "11".
local p = {}
_G.vars = { Pagename = mw.title.getCurrentTitle().text }
local f = require("Modul:Funktioner")
function p.birthdate(frame)
local date = frame.args['date'] or frame.args[1]
local date_lc = string.lower(date)
if string.match(date_lc, "okänt") or string.match(date_lc, "okänd") then
return "[[:Kategori:Figurer med okänt födelsedatum|" .. date .. "]][[Kategori:Figurer med okänt födelsedatum]]"
elseif string.match(date_lc, "ej fastställd") or string.match(date_lc, "ej fastställt") or string.match(date_lc, "inte fastställd") or string.match(date_lc, "inte fastställt") then
return "[[:Kategori:Figurer utan fastställt födelsedatum|" .. date .. "]][[Kategori:Figurer utan fastställt födelsedatum]]"
else
return "[[" .. date .. "]]"
end
end
function p.affiliation( frame )
local text = frame.args['text'] or frame.args[1] or nil
local delimiter = frame.args['delimiter'] or frame.args[2] or ';'
local affiliates = mw.text.split( text, delimiter )
local output = {}
for i, item in ipairs( affiliates ) do
item = f.trim(item)
if not string.match(item, '%S') then break end
if string.lower(item) == "nordens stjärnor" or string.lower(item) == "nordens stjÄrnor" then
item = "[[Nordens Stjärnor]][[Kategori:Medlemmar i Nordens Stjärnor]]"
else
item = "[[" .. item .. "]]"
end
table.insert(output, item)
end
return table.concat(output, ' · ')
end
function p.moralAlignment( frame )
local output = {}
local value = frame.args[1]
local value2 = frame.args[2]
local alignment = {
['ond'] = f.categoryLink( 'Onda figurer', vars.Pagename, 'Ond' ),
['neutral'] = f.categoryLink( 'Neutrala figurer', vars.Pagename, 'Neutral' ),
['god'] = f.categoryLink( 'Goda figurer', vars.Pagename, 'God' ),
}
if alignment[string.lower(value)] then
output = alignment[string.lower(value)]
elseif mw.site.stats.pagesInCategory(
f.firstToUpper(value) .. 'a figurer', 'pages'
) > 0 then
output = f.categoryLink(
f.firstToUpper(value) .. 'a figurer', vars.Pagemane, value
)
else
output = value
end
if value2 then
return output .. ', ' .. value2
else
return output
end
end
function p.maritalStatus( frame )
local statuses = mw.text.split( frame.args[1], ';')
local output = {}
for i, status in ipairs( statuses ) do
if string.lower(status) == "gift"
or string.lower(status) == "omgift"
or string.lower(status) == "nygift" then
table.insert( output, f.categoryLink( "Gifta figurer", vars.Pagename, status ) )
elseif string.lower(status) == "i förhållande"
or string.lower(status) == "förhållande" then
table.insert( output, f.categoryLink( "Figurer i förhållande", vars.Pagename, status ) )
elseif string.lower(status) == "änka"
or string.lower(status) == "änkling"
or string.lower(status) == "änkeman"
or string.lower(status) == "Änka"
or string.lower(status) == "Änkling"
or string.lower(status) == "Änkeman" then
table.insert( output, f.categoryLink( "Änkestående figurer", vars.Pagename, status ) )
elseif string.lower(status) == "singel"
or string.lower(status) == "ogift"
or string.lower(status) == "ensamstående" then
table.insert( output, f.categoryLink( "Ensamstående figurer", vars.Pagename, status ) )
elseif string.lower(status) == "förlovade" then
table.insert( output, f.categoryLink( "Förlovade figurer", vars.Pagename, status ) )
else
table.insert( output, f.categoryLink( status .. "a figurer", vars.Pagename, status ) )
end
end
table.insert(output, frame.args[2])
return table.concat(output, ' ')
end
return p