X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2FttWeekViewHelper.class.php;h=1144cea6bfe42d7e9352369a93eda1c699cc43a4;hb=1078c4da84d79f93ef7f8bbffc5f0c8cb2a1a274;hp=a790268bb35d755439146a86a991e364cb3c5209;hpb=cabf2460445f26eded09e7d2c9c8cda97e8db593;p=timetracker.git diff --git a/WEB-INF/lib/ttWeekViewHelper.class.php b/WEB-INF/lib/ttWeekViewHelper.class.php index a790268b..1144cea6 100644 --- a/WEB-INF/lib/ttWeekViewHelper.class.php +++ b/WEB-INF/lib/ttWeekViewHelper.class.php @@ -354,7 +354,7 @@ class ttWeekViewHelper { } // Convert minutes to hh:mm for display. foreach($dayHeaders as $dayHeader) { - $dayTotals[$dayHeader] = ttTimeHelper::minutesToDuration($dayTotals[$dayHeader]); // This breaks for negative hours. + $dayTotals[$dayHeader] = ttTimeHelper::minutesToDuration($dayTotals[$dayHeader]); } return $dayTotals; } @@ -579,8 +579,14 @@ class ttWeekViewHelper { } // We do have start time. - // Quick test if new duration is less then already existing. $newMinutes = ttTimeHelper::toMinutes($new_duration); + if ($newMinutes < 0) { + // Negative durations are not supported when start time is defined. + $err->add($i18n->get('error.field'), $i18n->get('label.duration')); + return false; + } + + // Quick test if new duration is less than already existing. $oldMinutes = ttTimeHelper::toMinutes($oldDuration); if ($newMinutes < $oldMinutes) return true; // Safe to modify.