「模块:Error」修訂間的差異檢視原始碼檢視歷史
小 (导入1个版本) |
mediawiki1>Xiplus 小 (已更改“模块:Error”的保护等级:高风险模板([编辑=仅管理员](无限期)[移动=仅管理员](无限期))) |
||
行 4: | 行 4: | ||
local function _error(args) | local function _error(args) | ||
+ | local message = args.message or args[1] or error('没有指定的-{zh-cn:信息; zh-tw:資訊}-', 2) | ||
+ | message = tostring(message) | ||
local tag = mw.ustring.lower(tostring(args.tag)) | local tag = mw.ustring.lower(tostring(args.tag)) | ||
行 12: | 行 14: | ||
-- Generate the html. | -- Generate the html. | ||
− | + | local root = mw.html.create(tag) | |
+ | root | ||
:addClass('error') | :addClass('error') | ||
− | :wikitext( | + | :wikitext(message) |
− | ) | + | |
+ | return tostring(root) | ||
end | end | ||
function p.error(frame) | function p.error(frame) | ||
local args | local args | ||
− | if | + | if frame == mw.getCurrentFrame() then |
-- We're being called via #invoke. The args are passed through to the module | -- 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. | -- from the template page, so use the args that were passed into the template. |
於 2019年2月27日 (三) 16:59 的修訂
此模塊的文檔可以在模塊:Error/doc創建
-- This module implements {{error}}.
local p = {}
local function _error(args)
local message = args.message or args[1] or error('没有指定的-{zh-cn:信息; zh-tw:資訊}-', 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 = mw.html.create(tag)
root
:addClass('error')
:wikitext(message)
return tostring(root)
end
function 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)
end
return p