模块:R-18:修订间差异
外观
	
	
无编辑摘要  | 
				小 无名测试  | 
				||
| 第1行: | 第1行: | ||
local p = {}  | -- 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  | ||
function   | |||
end  | |||
return p  | |||
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