diff --git a/app/Generator/Chart/PiggyBank/ChartJsPiggyBankChartGenerator.php b/app/Generator/Chart/PiggyBank/ChartJsPiggyBankChartGenerator.php deleted file mode 100644 index 2908fa0661..0000000000 --- a/app/Generator/Chart/PiggyBank/ChartJsPiggyBankChartGenerator.php +++ /dev/null @@ -1,58 +0,0 @@ - 1, - 'labels' => [], - 'datasets' => [ - [ - 'label' => 'Diff', - 'data' => [], - ], - ], - ]; - $sum = '0'; - foreach ($set as $key => $value) { - $date = new Carbon($key); - $sum = bcadd($sum, $value); - $data['labels'][] = $date->formatLocalized($format); - $data['datasets'][0]['data'][] = round($sum, 2); - } - - return $data; - } -} diff --git a/app/Generator/Chart/PiggyBank/PiggyBankChartGeneratorInterface.php b/app/Generator/Chart/PiggyBank/PiggyBankChartGeneratorInterface.php deleted file mode 100644 index 2841cd928e..0000000000 --- a/app/Generator/Chart/PiggyBank/PiggyBankChartGeneratorInterface.php +++ /dev/null @@ -1,31 +0,0 @@ -generator = app(PiggyBankChartGeneratorInterface::class); + $this->generator = app(GeneratorInterface::class); } /** @@ -56,26 +55,24 @@ class PiggyBankController extends Controller { // chart properties for cache: $cache = new CacheProperties; - $cache->addProperty('piggy-history'); + $cache->addProperty('chart.piggy-bank.history'); $cache->addProperty($piggyBank->id); if ($cache->has()) { return Response::json($cache->get()); } - $set = $repository->getEvents($piggyBank); - $set = $set->reverse(); - $collection = []; + $set = $repository->getEvents($piggyBank); + $set = $set->reverse(); + $chartData = []; + $sum = '0'; /** @var PiggyBankEvent $entry */ foreach ($set as $entry) { - $date = $entry->date->format('Y-m-d'); - $amount = $entry->amount; - if (isset($collection[$date])) { - $amount = bcadd($amount, $collection[$date]); - } - $collection[$date] = $amount; + $label = $entry->date->formatLocalized(strval(trans('config.month_and_day'))); + $sum = bcadd($sum, $entry->amount); + $chartData[$label] = $sum; } - $data = $this->generator->history(new Collection($collection)); + $data = $this->generator->singleSet($piggyBank->name, $chartData); $cache->store($data); return Response::json($data);