// isValidDuration validates a value as a time duration string (in hours and minutes).
static function isValidDuration($value) {
- if (strlen($value)==0 || !isset($value)) return false;
+ if (strlen($value) == 0 || !isset($value)) return false;
if ($value == '24:00' || $value == '2400') return true;
// toAbsDuration - converts a number of minutes to format 0:00
// even if $minutes is negative.
- static function toAbsDuration($minutes){
+ static function toAbsDuration($minutes, $abbreviate = false){
$hours = (string)((int)abs($minutes / 60));
- $mins = (string)(abs($minutes % 60));
+ $mins = (string) round(abs(fmod($minutes, 60)));
if (strlen($mins) == 1)
$mins = '0' . $mins;
+ if ($abbreviate && $mins == '00')
+ return $hours;
+
return $hours.':'.$mins;
}