Module:Series
Appearance
This module depends on the following other modules: |
This module uses TemplateStyles: |
Implements {{series}}.
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local function _series(args)
local styles = mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Template:Series/styles.css'})
local header = mw.html.create('div'):addClass('wst-series-header')
local header_row = header:tag('div'):tag('div')
-- faux td left: previous page link
local prev_cell = header_row:tag('div'):addClass('gen_header_backlink searchaux')
if args.previous then
prev_cell:tag('p')
:tag('span')
:addClass('searchaux seriesprevious')
:wikitext('←' .. args.previous)
end
-- faux td center: title
local title_cell = header_row:tag('div')
:addClass('gen_header_center_cell')
:tag('p')
if args.series then
title_cell:wikitext(args.series)
end
if args.series and args.title then
title_cell:tag('br')
end
if args.title then
title_cell:tag('span')
:addClass('gen-header-title')
:wikitext(args.title)
end
-- faux td left: next page link
local next_cell = header_row:tag('div'):addClass('gen_header_forelink searchaux')
if args['next'] then
next_cell:tag('p')
:tag('span')
:addClass('searchaux seriesnext')
:wikitext(args['next'] .. '→')
end
return styles .. tostring(header)
end
function p.series(frame)
return _series(getArgs(frame))
end
return p