Shorten timeSince helper, now based on Icinga\Util\Format
This commit is contained in:
parent
fcb5bc7ace
commit
5948ebed3f
|
@ -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>';
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue