모듈:If preview
보이기
이 모듈은 보호대상 등급이 매겨졌습니다. 이것은 매우 많은 문서에 사용되는 가시성이 높은 모듈이거나 매우 자주 문서 풀어넣기됩니다. 반달이나 실수가 많은 페이지에 영향을 미칠 수 있고 사소한 편집이 서버의 대량 로드가 일어날 수 있기 때문에, 이것은 편집 보호되었습니다. |
이 루아 모듈은 많은 문서에서 사용 중인 루아 모듈입니다. 이 루아 모듈을 수정하면 많은 문서에 영향을 줄 수 있습니다. 기여할 모든 내용은 /연습장이나 /시험장에서 사전 점검을 거쳐야 합니다. 이 루아 모듈을 수정하기 전에, 먼저 토론 문서에 의견을 구하시는 것이 좋습니다. |
이 모듈은 다음의 모듈에 의존합니다. |
이 모듈은 틀스타일을 사용합니다: |
이 모듈의 자세한 설명은 en: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