模組:NoteTA
外观
local z
local HtmlBuilder = require( 'Module:HTMLBuilder' )
local WikitextLC = require( 'Module:WikitextLC' )
function Tcode( args )
if args.T ~= nil and args.T ~= '' then
local builder = HtmlBuilder.create()
local div = builder.tag( 'div' )
.attr( 'id', 'noteTA-title' )
.attr( 'data-noteta-code', mw.uri.encode( args.T ) )
.wikitext( WikitextLC.title( args.T ) )
if args.dt ~= nil and args.dt ~= '' then
div.attr( 'data-noteta-desc', mw.uri.encode( args.T ) )
end
return tostring( builder )
else
return ''
end
end
function group( name )
if name == nil or name == '' then
return ''
end
local title = mw.title.makeTitle( 'Template', 'CGroup/' .. name )
if title.exists then
return frame:expandTemplate( title )
else
return tostring( HtmlBuilder.create()
.tag( 'div' )
.attr( 'id', 'noteTA-group-' .. mw.uri.anchorEncode( name ) )
.attr( 'class', 'noteTA-missing' )
.attr( 'data-noteta-group', name )
.allDone() )
end
end
function Gcode( args )
local code = {}
for i = 1, 30 do
code:insert( group( args['G' .. i] ) )
end
code = table.concat( code )
if code ~= '' then
code = tostring( HtmlBuilder.create()
.tag( 'div' )
.attr( 'id', 'noteTA-group' )
.wikitext( code )
.allDone() )
end
return code
end
function z.main( frame )
local args = frame:getParent().args
end
return z