From e0ed0cbeb22b9a9050238ab6e66f421cf59a2089 Mon Sep 17 00:00:00 2001 From: James Cole Date: Thu, 31 Jul 2014 10:11:02 +0200 Subject: [PATCH] Updated chart. --- app/lib/Firefly/Helper/Controllers/Chart.php | 27 +++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/app/lib/Firefly/Helper/Controllers/Chart.php b/app/lib/Firefly/Helper/Controllers/Chart.php index 614847912a..dc9015c029 100644 --- a/app/lib/Firefly/Helper/Controllers/Chart.php +++ b/app/lib/Firefly/Helper/Controllers/Chart.php @@ -180,7 +180,13 @@ class Chart implements ChartInterface case '6M': $beginning->subYears(6); break; + case 'custom': + $diff = $start->diff($end); + $days = $diff->days; + $beginning->subDays(12 * $days); + break; } + // loop over the periods: while ($beginning <= $start) { // increment currentEnd to fit beginning: @@ -203,9 +209,17 @@ class Chart implements ChartInterface break; case '6M': $currentEnd->addMonths(6)->subDay(); - + break; + case 'custom': + $diff = $start->diff($end); + $days = $diff->days; + $days = $days == 1 ? 2 : $days; + $currentEnd->addDays($days)->subDay(); + break; } + + // now format the current range: $title = ''; switch ($range) { @@ -225,11 +239,15 @@ class Chart implements ChartInterface case '6M': $title = $beginning->format('M Y') . ' - ' . $currentEnd->format('M Y'); break; + case 'custom': + $title = $beginning->format('d-m-Y').' - '.$currentEnd->format('d-m-Y'); + break; case 'yearly': // return $this->startdate->format('Y'); break; } + // get sum for current range: $journals = \TransactionJournal:: with( @@ -279,6 +297,13 @@ class Chart implements ChartInterface case '6M': $beginning->addMonths(6); break; + case 'custom': + $diff = $start->diff($end); + $days = $diff->days; + + $beginning->addDays($days); + break; + } } return $data;