跳转到内容
打开/关闭菜单
  • 396 文件
  • 2 用户
  • 6141 编辑
Gal中文百科
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

Module:If preview

来自Gal中文百科
更多语言
imported>Xiplus-abot2024年2月4日 (日) 16:50的版本 (已更改“Module:If preview”的保护设置:​高风险模板:207596引用<!-- 机器人3 -->([编辑=仅允许管理员](无限期)[移动=仅允许管理员](无限期)))
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

此模块的文档可以在Module:If preview/doc创建

local p = {}

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)
	if cfg.preview then
		return frame.args[1] or ''
	else
		return frame.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
	
	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.

disabled since we'll implement the template version in general

]]
--function p.warning(frame)
--	return p._warning(frame.args)
--end

--[[
warning, but for pass-through templates like {{preview warning}}
]]
function p.pwarning(frame)
	return p._warning(frame:getParent().args)
end

return p