|
|
Line 1: |
Line 1: |
| local p = {}
| |
| local getArgs = require("Module:Arguments").getArgs
| |
| local yn = require("Module:Yesno")
| |
| local cfg = mw.loadData('Module:If preview/configuration')
| |
|
| |
|
| --[[
| |
| main
| |
|
| |
| This function returns either the first argument or second argument passed to
| |
| this module, depending on whether the page is being previewed.
| |
|
| |
| ]]
| |
| function p.main(frame)
| |
| local args = getArgs(frame)
| |
| if cfg.preview then
| |
| return args[1] or ''
| |
| else
| |
| return args[2] or ''
| |
| end
| |
| end
| |
|
| |
| --[[
| |
| pmain
| |
|
| |
| This function returns either the first argument or second argument passed to
| |
| this module's parent (i.e. template using this module), depending on whether it
| |
| is being previewed.
| |
|
| |
| ]]
| |
| function p.pmain(frame)
| |
| return p.main(frame:getParent())
| |
| end
| |
|
| |
| local function warning_text(warning)
| |
| return mw.ustring.format(
| |
| cfg.warning_infrastructure,
| |
| cfg.templatestyles,
| |
| warning
| |
| )
| |
| end
| |
|
| |
| function p._warning(args)
| |
|
| |
| local warning = args[1] and args[1]:match('^%s*(.-)%s*$') or ''
| |
| if warning == '' then
| |
| return warning_text(cfg.missing_warning)
| |
| end
| |
|
| |
| if not cfg.preview then return '' end
| |
|
| |
| if yn(args['consolewarning']) then mw.addWarning(args[1] or cfg.missing_warning) end
| |
| return warning_text(warning)
| |
| end
| |
|
| |
| --[[
| |
| warning
| |
|
| |
| This function returns a "preview warning", which is the first argument marked
| |
| up with HTML and some supporting text, depending on whether the page is being previewed.
| |
|
| |
| ]]
| |
| -- function p.warning(frame)
| |
| -- mw.addWarning(frame.args[1] or cfg.missing_warning)
| |
| -- return p._warning(frame.args)
| |
| -- end
| |
|
| |
| --[[
| |
| warning, but for pass-through templates like {{preview warning}}
| |
| ]]
| |
| function p.pwarning(frame)
| |
| local args = getArgs(frame)
| |
| return p._warning(args)
| |
| end
| |
|
| |
| --[[
| |
| Does both mw.addWarning and preview warning
| |
| ]]
| |
|
| |
| function p.warn(text)
| |
| if text == nil or text == "" then return "" end
| |
| mw.addWarning(text)
| |
| return p._warning({text})
| |
| end
| |
|
| |
| --[[
| |
| Console warning
| |
| ]]
| |
| function p.consoleWarning(frame)
| |
| local args = getArgs(frame)
| |
| mw.addWarning(args[1] or cfg.missing_warning)
| |
| return ''
| |
| end
| |
|
| |
| return p
| |
Documentation for this module may be created at Module:If preview/doc