Refactor time_elapsed_string -> timeElapsedString and with short version.
This commit is contained in:
parent
a82a8afa3a
commit
6a6e14cf02
@ -204,7 +204,7 @@ class ManiaExchangeList implements CallbackListener, ManialinkPageAnswerListener
|
|||||||
$lineQuad->setZ(0.001);
|
$lineQuad->setZ(0.001);
|
||||||
}
|
}
|
||||||
|
|
||||||
$time = Formatter::time_elapsed_string(strtotime($map->updated));
|
$time = Formatter::timeElapsedString(strtotime($map->updated));
|
||||||
$array = array('$s' . $map->id => $posX + 3.5, '$s' . $map->name => $posX + 12.5, '$s' . $map->author => $posX + 59, '$s' . str_replace('Arena', '', $map->maptype) => $posX + 103, '$s' . $map->mood => $posX + 118, '$s' . $time => $posX + 130);
|
$array = array('$s' . $map->id => $posX + 3.5, '$s' . $map->name => $posX + 12.5, '$s' . $map->author => $posX + 59, '$s' . str_replace('Arena', '', $map->maptype) => $posX + 103, '$s' . $map->mood => $posX + 118, '$s' . $time => $posX + 130);
|
||||||
$labels = $this->maniaControl->getManialinkManager()->labelLine($mapFrame, $array);
|
$labels = $this->maniaControl->getManialinkManager()->labelLine($mapFrame, $array);
|
||||||
$authorLabel = $labels[2];
|
$authorLabel = $labels[2];
|
||||||
|
@ -48,24 +48,36 @@ abstract class Formatter {
|
|||||||
/**
|
/**
|
||||||
* Format an elapsed time String (2 days ago...) by a given timestamp
|
* Format an elapsed time String (2 days ago...) by a given timestamp
|
||||||
*
|
*
|
||||||
* @param int $ptime
|
* @param int $time Input time
|
||||||
* @return string
|
* @param boolean $short Short version
|
||||||
|
* @return string Formatted elapsed time string
|
||||||
*/
|
*/
|
||||||
public static function time_elapsed_string($ptime) {
|
public static function timeElapsedString($time, $short = false) {
|
||||||
// TODO: refactor code: camelCase!
|
$elapsedTime = time() - $time;
|
||||||
$etime = time() - $ptime;
|
|
||||||
|
|
||||||
if ($etime < 1) {
|
$second = $short ? 'sec.' : 'second';
|
||||||
return '0 seconds';
|
$minute = $short ? 'min.' : 'minute';
|
||||||
|
$hour = $short ? 'h' : 'hour';
|
||||||
|
$day = $short ? 'd' : 'day';
|
||||||
|
$month = $short ? 'm' : 'month';
|
||||||
|
$year = $short ? 'y' : 'year';
|
||||||
|
|
||||||
|
if ($elapsedTime < 1) {
|
||||||
|
return $short ? '0 sec.' : '0 seconds';
|
||||||
}
|
}
|
||||||
|
|
||||||
$a = array(12 * 30 * 24 * 60 * 60 => 'year', 30 * 24 * 60 * 60 => 'month', 24 * 60 * 60 => 'day', 60 * 60 => 'hour', 60 => 'minute', 1 => 'second');
|
$calculateSeconds = array(12 * 30 * 24 * 60 * 60 => $year,
|
||||||
|
30 * 24 * 60 * 60 => $month,
|
||||||
|
24 * 60 * 60 => $day,
|
||||||
|
60 * 60 => $hour,
|
||||||
|
60 => $minute,
|
||||||
|
1 => $second);
|
||||||
|
|
||||||
foreach ($a as $secs => $str) {
|
foreach ($calculateSeconds as $secs => $str) {
|
||||||
$d = $etime / $secs;
|
$d = $elapsedTime / $secs;
|
||||||
if ($d >= 1) {
|
if ($d >= 1) {
|
||||||
$r = round($d);
|
$r = round($d);
|
||||||
return $r . ' ' . $str . ($r > 1 ? 's' : '') . ' ago';
|
return $r . ' ' . $str . ($r > 1 ? (!$short ? 's' : '') : '') . ' ago';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return '';
|
return '';
|
||||||
|
Loading…
Reference in New Issue
Block a user