Modul:Wikidata/Formatters/duration

Dokumentaci tohoto modulu lze vytvořit na stránce Modul:Wikidata/Formatters/duration/Dokumentace

-- Tato stránka je pravidelně aktualizována robotem. Jakákoliv modifikace bude při příští aktualizaci přepsána a je třeba ji provádět na Wikipedii. 

require 'Modul:No globals'

local p = {}

local parent = require 'Modul:Wikidata/Formatters/quantity'
local lib = require 'Modul:Wikidata/lib'

local SECOND_ITEM = 'Q11574'

local function formatDuration(number)
	local minutes, seconds = number / 60, number % 60
	-- todo: optional hours
	return mw.ustring.format('%d:%02d', minutes, seconds)
end

function p.formatValue(value, options)
	if lib.getItemIdFromURI(value.unit) == SECOND_ITEM then
		return formatDuration(tonumber(value.amount))
	else
		return parent.formatValue(value, options)
	end
end

setmetatable( p, { __index = parent } )

return p