Module:Sandbox/RexxS/Getdateformat

Source: Wikipedia, the free encyclopedia.
--[[
Test module to look at performance of extracting the date format from
one of the {{Use dmy}} style maintenance templates.
Based entirely on Module:Citation/CS1/Configuration lines 438-468
--]]

p = {}

local df_template_patterns = {
	"{{ *[Uu]se (dmy)",
	"{{ *[Uu]se *(mdy)",
	"{{ *[Uu]se *([Dd][Mm][Yy])",
	"{{ *[Uu]se *([Mm][Dd][Yy])",
	"{{ *([Dd][Mm][Yy])",
	"{{ *([Mm][Dd][Yy])"
}

local function get_date_format()
	local pagecontent = mw.title.getCurrentTitle():getContent() or '';
	for idx, pattern in ipairs (df_template_patterns) do
		local first, last, match = pagecontent:find(pattern);
		if match then return match:lower() end
	end
end

function p.getFormat(frame)
	return get_date_format()
end

function p.null(frame)
	return
end

return p