Moduł:Brudnopis/Paweł Ziemian/Wikidane/Pdata1

Z Wikipedii, wolnej encyklopedii

Dokumentacja dla tego modułu może zostać utworzona pod nazwą Moduł:Brudnopis/Paweł Ziemian/Wikidane/Pdata1/opis

local format = require("Moduł:Wikidane/format/snak").format

local function formatSomeValue(prop, options)
	local i18n = {
		earliestOnly = "nie wcześniej niż %s",
		latestOnly = "nie później niż %s",
		both = "pomiędzy %s a\194\160%s"
	}
	
	local formatQualifiers = require("Moduł:Wikidane/format/qualifiers")
	local earliestDate = formatQualifiers.MINTIME(prop, options, "P1319")
	local latestDate =  formatQualifiers.MAXTIME(prop, options, "P1326")
	if earliestDate and latestDate then
		return string.format(i18n.both, earliestDate, latestDate)
	elseif earliestDate then
		return string.format(i18n.earliestOnly, earliestDate)
	elseif latestDate then
		return string.format(i18n.latestOnly, latestDate)
	end
end

return {
 
scope = "prop",
 
format = function(prop, options)
	mw.logObject(prop, "prop")
	mw.logObject(options, "options")
 
	if (prop.type ~= "statement") or not prop.mainsnak then
		return
	end
 
	return prop.mainsnak.snaktype == "somevalue"
		and formatSomeValue(prop, options)
		or format(prop.mainsnak, options)
end,
 
}