Module:Infocard: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
end | end | ||
local args = getArgs(frame, { | local args = getArgs(frame, { | ||
wrappers = 'Template:Infocard' | wrappers = { | ||
'Template:Infocard', | |||
'Template:Infocard2' | |||
} | |||
}) | }) | ||
return p._main(args) | return p._main(args) |
Revision as of 23:26, 23 February 2016
The above documentation is transcluded from Module:Infocard/doc.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
local p = {}
local getArgs
function p.main(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
local args = getArgs(frame, {
wrappers = {
'Template:Infocard',
'Template:Infocard2'
}
})
return p._main(args)
end
function p._main(args)
local container = mw.html.create('div')
:attr( 'class', 'infocard ' .. (args.class or '') )
local topbar = mw.html.create('div')
:attr('class', 'topbar')
topbar:tag('div')
:attr('class', 'left')
:wikitext(args.headerleft)
:done()
local middle = mw.html.create('div')
:attr('class', 'middle')
middle:tag('div')
:attr('class', 'header')
:wikitext(args.header)
:done()
if args.subheader then
middle:tag('div')
:attr('class', 'subheader')
:wikitext(args.subheader)
:done()
end
topbar:node(middle)
topbar:tag('div')
:attr('class', 'right')
:wikitext(args.headerright)
:done()
container:node(topbar)
local inner = mw.html.create('div')
:attr('class', 'inner')
local i = 1
while args[i] do
inner:tag('div')
:attr('class', 'block')
:wikitext(args[i])
:done()
i = i + 1
end
container:node(inner)
return tostring(container)
end
return p