Модуль:Serialization/TimeSpan: различия между версиями
Pok (обсуждение | вклад) Нет описания правки |
Pok (обсуждение | вклад) Нет описания правки |
||
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 26: | Строка 26: | ||
end | end | ||
-- Форматирование в "X час. Y мин. Z сек." | local function bold(n) | ||
return "<b>" .. tostring(n) .. "</b>" | |||
end | |||
-- Форматирование в "X час. Y мин. Z сек." с жирными числами | |||
local function format_time(value) | local function format_time(value) | ||
local total_seconds = math.floor(value) | local total_seconds = math.floor(value) | ||
| Строка 37: | Строка 41: | ||
if hours > 0 then | if hours > 0 then | ||
table.insert(parts, hours .. " час.") | table.insert(parts, bold(hours) .. " час.") | ||
end | end | ||
if minutes > 0 then | if minutes > 0 then | ||
table.insert(parts, minutes .. " мин.") | table.insert(parts, bold(minutes) .. " мин.") | ||
end | end | ||
if seconds > 0 or #parts == 0 then | if seconds > 0 or #parts == 0 then | ||
table.insert(parts, seconds .. " сек.") | table.insert(parts, bold(seconds) .. " сек.") | ||
end | end | ||
| Строка 51: | Строка 55: | ||
function p.main(frame) | function p.main(frame) | ||
local args = frame.args[1] | local args = frame.args[1] | ||
local time = parse_timespan( | local time = parse_timespan(args) | ||
return format_time(time) | return format_time(time) | ||
end | end | ||
return p | return p | ||