]> wagnertech.de Git - timetracker.git/blobdiff - WEB-INF/lib/ttTimeHelper.class.php
Cosmetic, whitespace.
[timetracker.git] / WEB-INF / lib / ttTimeHelper.class.php
index 50904886b8c5556cca9b0e5de5203fd0077dd4f5..f5edc5fa73fa7baaf342a9a8882d29faa4d7915c 100644 (file)
@@ -160,13 +160,11 @@ class ttTimeHelper {
     return (int)@$time_a[1] + ((int)@$time_a[0]) * 60;
   }
 
-  // toAbsDuration - converts a number of minutes to format 00:00
+  // toAbsDuration - converts a number of minutes to format 0:00
   // even if $minutes is negative.
   static function toAbsDuration($minutes){
     $hours = (string)((int)abs($minutes / 60));
     $mins = (string)(abs($minutes % 60));
-    if (strlen($hours) == 1)
-      $hours = '0'.$hours;
     if (strlen($mins) == 1)
       $mins = '0' . $mins;
     return $hours.':'.$mins;
@@ -795,4 +793,23 @@ class ttTimeHelper {
 
     return $record_identifier;
   }
+
+  // getGroupedRecordsTotals - returns day totals for grouped records.
+  static function getGroupedRecordsTotals($groupedRecords) {
+    $groupedRecordsTotals = array();
+    foreach ($groupedRecords as $groupedRecord) {
+      foreach($groupedRecord as $key => $dayEntry) {
+        if ($dayEntry['duration']) {
+          $minutes = ttTimeHelper::toMinutes($dayEntry['duration']);
+          $groupedRecordsTotals[$key] += $minutes;
+        }
+      }
+    }
+    // Convert minutes to hh:mm for display.
+    foreach ($groupedRecordsTotals as $key => $single_total) {
+      $groupedRecordsTotals[$key] = ttTimeHelper::toAbsDuration($single_total);
+    }
+
+    return $groupedRecordsTotals;
+  }
 }