Jump to content

Module:Road data/parser/hooks

From Simple English Wikipedia, the free encyclopedia
Revision as of 05:29, 13 January 2014 by Mxn (talk | changes) (Some sparse argument tables don’t need to switch on anything, they just need the existence check)

Documentation for this module may be created at Module:Road data/parser/hooks/doc

local p = {}

function p.split(parameters, args)
	local route = tonumber(args.route) or 0
	if route < parameters.split then
		return parameters.below
	else
		return parameters.above
	end
end

function p.between(parameters, args)
	local lower = parameters.lower
	local upper = parameters.upper
	local route = tonumber(args.route) or 0
	if route < lower or route >= upper then
		return parameters.no
	else
		return parameters.yes
	end
end

-- Return a file name in the argument table based on the value of arg in that
-- table, or the default file name if an existent file name is not found in the
-- table.
function p.fileexists(parameters, args)
	local pageName = parameters[1] or args[parameters.arg or "route"]
	if pageName and mw.title.makeTitle("Media", pageName).fileExists then
		return pageName
	else
		return parameters.default	-- assumed to exist
	end
end

return p