Duration only mode #131 (#134)

This commit is contained in:
Kevin Papst
2018-02-10 22:19:49 +01:00
committed by GitHub
parent 93e1cd5095
commit 5a4bb0d081
19 changed files with 671 additions and 135 deletions

View File

@@ -9,6 +9,7 @@
namespace App\Twig;
use App\Utils\Duration;
use Symfony\Component\Intl\Intl;
use App\Entity\Timesheet;
use Twig\TwigFilter;
@@ -23,6 +24,11 @@ class Extensions extends \Twig_Extension
*/
private $locales;
/**
* @var Duration
*/
protected $durationFormatter;
/**
* Extensions constructor.
* @param string $locales
@@ -30,6 +36,7 @@ class Extensions extends \Twig_Extension
public function __construct($locales)
{
$this->locales = explode('|', $locales);
$this->durationFormatter = new Duration();
}
/**
@@ -77,20 +84,7 @@ class Extensions extends \Twig_Extension
*/
public function duration($seconds, $includeSeconds = false)
{
$hour = floor($seconds / 3600);
$minute = floor(($seconds / 60) % 60);
$hour = $hour > 9 ? $hour : '0' . $hour;
$minute = $minute > 9 ? $minute : '0' . $minute;
if (!$includeSeconds) {
return $hour . ':' . $minute . ' h';
}
$second = $seconds % 60;
$second = $second > 9 ? $second : '0' . $second;
return $hour . ':' . $minute . ':' . $second . ' h';
return $this->durationFormatter->format($seconds, $includeSeconds) . ' h';
}
/**