// minutesToDuration converts an integer number of minutes into duration string.
// Formats returned HH:MM, HHH:MM, HH, or HHH.
static function minutesToDuration($minutes, $abbreviate = false) {
- $sign = $minutes > 0 ? '' : '-';
+ $sign = $minutes >= 0 ? '' : '-';
$minutes = abs($minutes);
$hours = (string) (int)($minutes / 60);
// toMinutes - converts a time string in format 00:00 to a number of minutes.
static function toMinutes($value) {
+ $signMultiplier = ttStartsWith($value, '-') ? -1 : 1;
+ if ($signMultiplier == -1) $duration = ltrim($duration, '-');
+
$time_a = explode(':', $value);
- return (int)@$time_a[1] + ((int)@$time_a[0]) * 60;
+ return $signMultiplier * ((int)@$time_a[1] + ((int)@$time_a[0]) * 60);
}
// toAbsDuration - converts a number of minutes to format 0:00