sintonia/legacy/application/models/formatters/TimeFilledFormatter.php

53 lines
1.1 KiB
PHP
Raw Permalink Normal View History

<?php
class TimeFilledFormatter
{
/**
* @string seconds
*/
private $_seconds;
2021-10-11 16:10:47 +02:00
// @param string $seconds
public function __construct($seconds)
{
$this->_seconds = $seconds;
}
public function format()
{
2021-10-11 16:10:47 +02:00
$formatted = '';
$sign = ($this->_seconds < 0) ? '-' : '+';
$perfect = true;
2012-07-26 00:42:46 +02:00
$time = Application_Common_DateHelper::secondsToPlaylistTime(abs($this->_seconds));
2021-10-11 16:10:47 +02:00
$info = explode(':', $time);
$formatted .= $sign;
if (intval($info[0]) > 0) {
2021-10-11 16:10:47 +02:00
$info[0] = ltrim($info[0], '0');
$formatted .= " {$info[0]}h";
$perfect = false;
}
if (intval($info[1]) > 0) {
2021-10-11 16:10:47 +02:00
$info[1] = ltrim($info[1], '0');
$formatted .= " {$info[1]}m";
$perfect = false;
}
if (intval($info[2]) > 0) {
$sec = round($info[2], 0);
$formatted .= " {$sec}s";
$perfect = false;
}
// 0 over/under lap of content.
if ($perfect === true) {
2021-10-11 16:10:47 +02:00
$formatted = '+ 0s';
}
return $formatted;
}
}