Loading
  • 21 Aug, 2019

  • By, Wikipedia

Module:Citation Mode

This function is intended to be used in |mode= for templates which wrap other citation templates. It outputs its argument unless {{CS1 config}} configures a page-wide mode on the current page, in which case it outputs nothing. The effect of this is that templates invoking this module do not set a mode, allowing the parent template to obey the page-wide mode set in {{CS1 config}}.

Wrapper templates should not attempt to access {{CS1 config}} directly, because this would cause them to be incorrectly added to Category:CS1 maint: overridden setting.

Usage

{{#invoke:Citation mode|main|mode}}

returns empty if {{CS1 config}} mode is set on page, otherwise returns mode argument.

See also

require ('strict')

local p = {}

-- determine whether we're being called from a sandbox
local isSandbox = mw.getCurrentFrame():getTitle():find('sandbox', 1, true)
local sandbox = isSandbox and '/sandbox' or ''

local cfg = mw.loadData ('Module:Citation/CS1/Configuration' .. sandbox)

-- if cs1 config is set, return false, otherwise use supplied mode
-- this prevents putting articles into "overriden mode" tracking category
function p._main(mode)
	return not cfg.global_cs1_config_t['Mode'] and mode
end

function p.main(frame)
	local getArgs = require('Module:Arguments').getArgs
	local args = getArgs(frame)
	return p._main(args[1]) or ""
end

return p