模块:R-18

来自SS唯基
Zev讨论 | 贡献2014年5月18日 (日) 14:06的版本 (无名测试)
跳到导航 跳到搜索

此模块的文档可以在模块:R-18/doc创建

-- This module implements {{error}}.local p = {}local HtmlBuilder = require('Module:HtmlBuilder')local function _error(args)    local message = args.message or args[1] or error('no message specified', 2)    message = tostring(message)    local tag = mw.ustring.lower(tostring(args.tag))    -- Work out what html tag we should use.    if not (tag == 'p' or tag == 'span' or tag == 'div') then        tag = 'strong'    end    -- Generate the html.    local root = HtmlBuilder.create(tag)    root        .addClass('error')        .wikitext(message)    return tostring(root)endfunction p.error(frame)    local args    if frame == mw.getCurrentFrame() then        -- We're being called via #invoke. The args are passed through to the module        -- from the template page, so use the args that were passed into the template.        args = frame.args    else        -- We're being called from another module or from the debug console, so assume        -- the args are passed in directly.        args = frame    end    -- if the message parameter is present but blank, change it to nil so that Lua will    -- consider it false.    if args.message == "" then        args.message = nil    end    return _error(args)endreturn p