今天是2024年11月5日 第45周 星期二

代人,时大变了。

我们生活在大地上,但我们的梦想超越天空。

“模块:NoteTA”的版本间的差异

来自Akarin
跳到导航 跳到搜索
(mw.html)
第7行: 第7行:
 
    end
 
    end
 
    local div = mw.html.create( 'div' )
 
    local div = mw.html.create( 'div' )
      :attr( 'id', 'noteTA-title' )
+
      :attr( 'class', 'noteTA-title' )
 
      :attr( 'data-noteta-code', mw.uri.encode( args.T ) )
 
      :attr( 'data-noteta-code', mw.uri.encode( args.T ) )
 
      :wikitext( WikitextLC.title( args.T ) )
 
      :wikitext( WikitextLC.title( args.T ) )
第25行: 第25行:
 
    else
 
    else
 
      return tostring( mw.html.create( 'div' )
 
      return tostring( mw.html.create( 'div' )
          :attr( 'id', 'noteTA-group-' .. mw.uri.anchorEncode( name ) )
+
          -- :attr( 'id', 'noteTA-group-' .. mw.uri.anchorEncode( name ) )
 
          :attr( 'class', 'noteTA-missing' )
 
          :attr( 'class', 'noteTA-missing' )
 
          :attr( 'data-noteta-group', name ) )
 
          :attr( 'data-noteta-group', name ) )
第39行: 第39行:
 
    if code ~= '' then
 
    if code ~= '' then
 
      code = tostring( mw.html.create( 'div' )
 
      code = tostring( mw.html.create( 'div' )
          :attr( 'id', 'noteTA-group' )
+
          :attr( 'class', 'noteTA-group' )
 
          :wikitext( code ) )
 
          :wikitext( code ) )
 
      if args.G31 ~= nil then
 
      if args.G31 ~= nil then
第53行: 第53行:
 
    end
 
    end
 
    local div = mw.html.create( 'div' )
 
    local div = mw.html.create( 'div' )
      :attr( 'id', 'noteTA-local-' .. i )
+
      :attr( 'class', 'noteTA-local-' .. i )
 
      :attr( 'data-noteta-code', mw.uri.encode( code ) )
 
      :attr( 'data-noteta-code', mw.uri.encode( code ) )
 
      :wikitext( WikitextLC.hidden( code ) )
 
      :wikitext( WikitextLC.hidden( code ) )
第70行: 第70行:
 
    if code ~= '' then
 
    if code ~= '' then
 
      code = tostring( mw.html.create( 'div' )
 
      code = tostring( mw.html.create( 'div' )
          :attr( 'id', 'noteTA-local' )
+
          :attr( 'class', 'noteTA-local' )
 
          :wikitext( code ) )
 
          :wikitext( code ) )
 
      if args[31] ~= nil then
 
      if args[31] ~= nil then
第89行: 第89行:
 
        title = 'topicon',
 
        title = 'topicon',
 
        args = {
 
        args = {
          id = 'noteTA-topicon',
+
          class = 'noteTA-topicon',
 
          image = 'Zh conversion icon m.svg',
 
          image = 'Zh conversion icon m.svg',
 
          alt = '本页使用了标题或全文手工转换',
 
          alt = '本页使用了标题或全文手工转换',

2014年6月7日 (六) 18:10的版本

50px 模块文档[查看] [编辑] [历史] [清除缓存]

本模块用于执行{{NoteTA}}模板,请到模板页阅读具体用法。

local z = {}
local WikitextLC = require( 'Module:WikitextLC' )

function Tcode( args )
    if args.T == nil or args.T == '' then
        return ''
    end
    local div = mw.html.create( 'div' )
        :attr( 'class', '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.dt ) )
    end
    return tostring( div )
end

function group( name, frame )
    if name == nil or name == '' then
        return ''
    end
    local title = mw.title.makeTitle( 'Template', 'CGroup/' .. name )
    if title and title.exists then
        return frame:expandTemplate{ title = title }
    else
        return tostring( mw.html.create( 'div' )
                -- :attr( 'id', 'noteTA-group-' .. mw.uri.anchorEncode( name ) )
                :attr( 'class', 'noteTA-missing' )
                :attr( 'data-noteta-group', name ) )
    end
end

function Gcode( args, frame )
    local code = {}
    for i = 1, 30 do
        table.insert( code, group( args['G' .. i], frame ) )
    end
    code = table.concat( code )
    if code ~= '' then
        code = tostring( mw.html.create( 'div' )
                :attr( 'class', 'noteTA-group' )
                :wikitext( code ) )
        if args.G31 ~= nil then
            code = code .. '[[Category:NoteTA模板参数使用数量超过限制的页面|G]]'
        end
    end
    return code
end

function local_( i, code, desc )
    if code == nil or code == '' then
        return ''
    end
    local div = mw.html.create( 'div' )
        :attr( 'class', 'noteTA-local-' .. i )
        :attr( 'data-noteta-code', mw.uri.encode( code ) )
        :wikitext( WikitextLC.hidden( code ) )
    if desc ~= nil and desc ~= '' then
        div:attr( 'data-noteta-desc', mw.uri.encode( desc ) )
    end
    return tostring( div )
end

function Lcode( args )
    local code = {}
    for i = 1, 30 do
        table.insert( code, local_( i, args[i], args['d' .. i] ) )
    end
    code = table.concat( code )
    if code ~= '' then
        code = tostring( mw.html.create( 'div' )
                :attr( 'class', 'noteTA-local' )
                :wikitext( code ) )
        if args[31] ~= nil then
            code = code .. '[[Category:NoteTA模板参数使用数量超过限制的页面|L]]'
        end
    end
    return code
end

function z.main( frame )
    local args = frame:getParent().args
    local Tc = Tcode( args )
    local Gc = Gcode( args, frame )
    local Lc = Lcode( args )
    local code = Tc .. Gc .. Lc
    if code ~= '' then
        code = frame:expandTemplate{
            title = 'topicon',
            args = {
                class = 'noteTA-topicon',
                image = 'Zh conversion icon m.svg',
                alt = '本页使用了标题或全文手工转换',
                title = '本页使用了标题或全文手工转换',
                link = '',
                size = '35px',
            },
        } .. tostring( mw.html.create( 'div' )
                :attr( 'id', 'noteTA' )
                :wikitext( code ) )
        if mw.title.getCurrentTitle():inNamespace( 'Template' ) then
            code = code .. '[[Category:放置于模板的noteTA]]'
        end
    end
    return code
end

return z