Modul:Homokozó/84.3.90.28/CitPer
Megjelenés
Homokozó/84.3.90.28/CitPer[mi ez?] • [dokumentáció: mutat, ] • [tesztek: sikeres: 0, sikertelen: 0, kihagyva: 1 (részletek)]
local args = {}
local lang = mw.getContentLanguage()
local function _main()
local s = ''
if args.aut or args['szerző'] then
s = s .. (args.aut or args['szerző'])
if args.aut2 or args['szerző2'] then
s = s .. ' – ' .. (args.aut2 or args['szerző2'])
if args.aut3 or args['szerző3'] then
s = s .. ' – ' .. (args.aut3 or args['szerző3'])
end
end
s = s .. ': '
end
if args.tit or args['cím'] then
s = s .. lang:ucfirst(args.tit or args['cím'])
if args.subtit or args['alcím'] then s = s .. ': ' .. lang:ucfirst(args.subtit or args['alcím']) end
if not args.p then s = s .. '.' end
end
if args.per or args.periodika then s = s .. " ''" .. (args.per or args.periodika) .. ",''" end
if args.tom or args['évfolyam'] then s = s .. ' ' .. require('Modul:Roman').main{args.tom or args['évfolyam']} .. '. évf.' end
local d = ''
if args.ann or args['év'] then
d = d .. (args.ann or args['év']) .. '.'
if args.lun or args['hónap'] then
d = d .. ' ' .. mw.getCurrentFrame():expandTemplate{title = 'Rövid hónapnév', args = {args.lun or args['hónap']}}
if args.die or args.nap then
d = d .. ' ' .. (args.die or args.nap) .. '.'
end
d = '(' .. d .. ')'
end
end
if args.fasc or args['szám'] then
if (args.ann or args['év']) and (args.lun or args['hónap']) then
d = (args.fasc or args['szám']) .. '. sz. ' .. d
else
d = d .. (d ~= '' and ' ') .. (args.fasc or args['szám']) .. '. sz.'
end
end
s = s .. (d ~= '' and ' ' or '') .. d
if args.pag or args.oldal then s = s .. ' ' .. (args.pag or args.oldal) .. '. o.' end
if args.misc or args['egyéb'] then s = s .. '  ' .. (args.misc or args['egyéb']) end
if args.url then s = s .. ' [' .. args.url .. ' Online hozzáférés]' end
s = ' → ' .. s
for k, v in pairs(args) do s = k .. '=' .. v .. ', ' .. s end
return s
end
local p = {}
function p.main(frame)
if frame == mw.getCurrentFrame() then
for k, v in pairs(frame:getParent().args) do
if v ~= '' then args[k] = v end
end
else
args = frame
end
return _main()
end
return p