Modulo:Wikidata/Formatters/duration

Dokumentado por ĉi tiu modulo povas esti kreata ĉe Modulo:Wikidata/Formatters/duration/dokumentado

require('strict')

local p = {}

local parent = require 'Modulo:Wikidata/Formatters/quantity'
local lib = require 'Modulo: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