Difference between revisions of "Module:Error"
m (Changed protection level of Module:Error: High-risk Lua module: allow template editors ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))) |
m (1 revision) |
(No difference)
|
Latest revision as of 03:23, 22 March 2014
Documentation for this module may be created at Module:Error/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) 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