Module: Blog post
CSS file |
tweaks |
||
| Line 25: | Line 25: | ||
return table.concat( authors, ' / ' ) | return table.concat( authors, ' / ' ) | ||
else | else | ||
return ', <strong> | return ', <strong>' .. table.concat( authors, ' / ' ) .. '</strong>' | ||
end | end | ||
end | end | ||
return p | return p | ||
Latest revision as of 10:15, 6 May 2025
Documentation for this module may be created at Module:Blog post/doc
local p = {}
-- --
-- Format a list of authors from the author or author parameters.
-- Testing:
-- =p.authorList({args={author='Foo'}})
-- =p.authorList({args={authors='Foo; Bar', format='plain'}})
p.authorList = function( frame )
-- Gather and normalise authors.
local authors = {}
if frame.args.author ~= nil and frame.args.author ~= '' then
authors[1] = frame.args.author
elseif frame.args.authors ~= nil and frame.args.authors ~= '' then
authors = mw.text.split( frame.args.authors, ';', true )
end
if #authors == 0 then
return ''
end
for i, a in pairs( authors ) do
authors[i] = mw.text.trim( a )
end
-- Format output.
if frame.args.format == 'plain' then
return table.concat( authors, ' / ' )
else
return ', <strong>' .. table.concat( authors, ' / ' ) .. '</strong>'
end
end
return p