Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

Module:Daterange

From Wikipedia, the free encyclopedia

return { main = function(frame)
	local args = require('Module:Arguments').getArgs(frame)
	local output = {}

	for k, v in pairs(args) do
		if (type(k) == "string") and ((v or "") ~= "") and (k:sub(0,5) == "start") and tonumber(k:sub(6,-1)) then
			num = tonumber(k:sub(6,-1))
			if num and num > 0 then
				e = args["end"..num] or ""
				if e:sub(0,-3) == v:sub(0,-3) then
					e = e:sub(-2,-1)
				end
				output[num] = v..(e~="" and "–"..e or "")
			end
		end
	end
	
	s = (args.start or args[1] or "")
	if (s ~= "") then
		e = args["end"] or args[2] or ""
		if e:sub(0,-3) == s:sub(0,-3) then
			e = e:sub(-2,-1)
		end
		table.insert(output, 1, s..(e~="" and "–"..e or ""))
	end

	return table.concat(output, ", ")
end }