Shorten timeSince helper, now based on Icinga\Util\Format

This commit is contained in:
Thomas Gelf 2014-02-25 10:20:06 +00:00
parent fcb5bc7ace
commit 5948ebed3f
1 changed files with 5 additions and 36 deletions

View File

@ -29,6 +29,8 @@
*/
// {{{ICINGA_LICENSE_HEADER}}}
use Icinga\Util\Format;
/**
* Class Zend_View_Helper_TimeSince
*/
@ -36,42 +38,9 @@ class Zend_View_Helper_TimeSince extends Zend_View_Helper_Abstract
{
public function timeSince($timestamp)
{
if (!is_numeric($timestamp)) {
$timestamp = strtotime($timestamp);
}
if (!is_numeric($timestamp)) {
return '?';
}
if (! $timestamp) return '-';
$duration = time() - $timestamp;
$prefix = '';
if ($duration < 0) {
$prefix = '-';
$duration *= -1;
}
if ($duration > 3600 * 24 * 3) {
if (date('Y') === date('Y', $timestamp)) {
return date('d.m.', $timestamp);
}
return date('m.Y', $timestamp);
}
return '<span class="timesince">' . $prefix . $this->showHourMin($duration) . '</span>';
}
public static function showHourMin($sec)
{
$min = floor($sec / 60);
if ($min < 60) {
return $min . 'm ' . ($sec % 60) . 's';
}
$hour = floor($min / 60);
if ($hour < 24) {
return date('H:i', time() - $sec);
}
return floor($hour / 24) . 'd ' . ($hour % 24) . 'h';
return '<span class="timesince">'
. Format::timeSince($timestamp)
. '</span>';
}
}