Module:If preview: Difference between revisions

merge in functionality from Module:Preview warning and add TemplateStyles, remove p.boolean as not necessary, move some stuff into a cfg page, and don't return temporaries in p.main, remove use
m (Changed protection level for "Module:If preview": High-risk Lua module ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite)))
(merge in functionality from Module:Preview warning and add TemplateStyles, remove p.boolean as not necessary, move some stuff into a cfg page, and don't return temporaries in p.main, remove use)
Line 1:
local p = {}
 
local cfg = mw.loadData('Module:If preview/configuration')
 
--[[
main
 
This function returns the either the first argument or second argument passed to this module, depending on whether it is being previewed.
this module, depending on whether the page is being previewed.
 
Usage:
{{#invoke:If preview|main|value_if_preview|value_if_not_preview}}
 
]]
 
function p.main(frame)
if cfg.preview then
local result = ''
result =return frame.args[21] or '';
Preview_mode = frame:preprocess('{{REVISIONID}}'); -- use magic word to get revision id
if not (Preview_mode == nil or Preview_mode == '') then -- if there is a value then this is not a preiview
result = frame.args[2] or '';
else
result =return frame.args[12] or ''; -- no value (nil or empty string) so this is a preview
end
return result
end
 
Line 25 ⟶ 21:
pmain
 
This function returns the 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.
this module's parent (i.e. template using this module), depending on whether it
 
is being previewed.
Usage:
{{#invoke:If preview|pmain}}
 
]]
 
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.boolean_warning(frameargs)
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
return warning_text(warning)
end
 
--[[
warning
boolean
 
This function returns thea either"preview true or falsewarning", dependingwhich onis whetherthe it isfirst beingargument previewed.marked
up with HTML and some supporting text, depending on whether the page is being previewed.
 
disabled since we'll implement the template version in general
Usage:
{{#invoke:If preview|boolean}}
 
]]
--function p.warning(frame)
-- return p._warning(frame.args)
--end
 
--[[
function p.boolean(frame)
warning, but for pass-through templates like {{preview warning}}
local result = ''
]]
Preview_mode = frame:preprocess('{{REVISIONID}}'); -- use magic word to get revision id
function p.pwarning(frame)
if not (Preview_mode == nil or Preview_mode == '') then -- if there is a value then this is not a preiview
return p._warning(frame:getParent().args)
result = false;
else
result = true; -- no value (nil or empty string) so this is a preview
end
return result
end
 
return p
Anonymous user