Module:Error: Difference between revisions
Jump to navigation
Jump to search
improve default value of tag
m (1 revision imported: Importing Custome Rule Template) |
enws>CalendulaAsteraceae (improve default value of tag) |
||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
local function _error(args) | local function _error(args) | ||
local tag = mw.ustring.lower(tostring(args.tag or 'strong')) | |||
-- 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. | |||
return tostring(mw.html.create(tag) | |||
:addClass('error') | |||
:wikitext(tostring(args.message or args[1] or error('no message specified', 2))) | |||
) | |||
end | end | ||
function p.error(frame) | function p.error(frame) | ||
local args | |||
if type(frame.args) == 'table' 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. | |||
]=] | |||
if args.message == '' then | |||
args.message = nil | |||
end | |||
return _error(args) | |||
end | end | ||
return p | return p | ||