diff --git a/app/controllers/GoogleChartController.php b/app/controllers/GoogleChartController.php
index 464e24e20e..8e9456aa6d 100644
--- a/app/controllers/GoogleChartController.php
+++ b/app/controllers/GoogleChartController.php
@@ -473,6 +473,29 @@ class GoogleChartController extends BaseController
}
+ public function piggyBankHistory(\Piggybank $piggybank)
+ {
+ /** @var \Grumpydictator\Gchart\GChart $chart */
+ $chart = App::make('gchart');
+ $chart->addColumn('Date', 'date');
+ $chart->addColumn('Balance', 'number');
+ $sum = 0;
+
+ $set = \DB::table('piggybank_events')
+ ->where('piggybank_id',$piggybank->id)
+ ->groupBy('date')
+ ->get(['date',DB::Raw('SUM(`amount`) AS `sum`')]);
+
+ foreach($set as $entry) {
+ $chart->addRow(new Carbon($entry->date), floatval($entry->sum));
+ }
+
+ $chart->generate();
+
+ return Response::json($chart->getData());
+
+ }
+
/**
* @param RecurringTransaction $recurring
*/
@@ -499,7 +522,7 @@ class GoogleChartController extends BaseController
$end = new Carbon;
while ($start <= $end) {
$result = $recurring->transactionjournals()->before($end)->after($start)->first();
- if($result) {
+ if ($result) {
$amount = $result->getAmount();
} else {
$amount = 0;
diff --git a/app/views/piggybanks/show.blade.php b/app/views/piggybanks/show.blade.php
index 1d23179eda..33daa08e89 100644
--- a/app/views/piggybanks/show.blade.php
+++ b/app/views/piggybanks/show.blade.php
@@ -113,4 +113,13 @@
@stop
@section('scripts')
+
+
+
+
+{{HTML::script('assets/javascript/firefly/gcharts.options.js')}}
+{{HTML::script('assets/javascript/firefly/gcharts.js')}}
+{{HTML::script('assets/javascript/firefly/piggybanks.js')}}
@stop
diff --git a/public/assets/javascript/firefly/piggybanks.js b/public/assets/javascript/firefly/piggybanks.js
index 3d4d4739c0..f97c71339f 100644
--- a/public/assets/javascript/firefly/piggybanks.js
+++ b/public/assets/javascript/firefly/piggybanks.js
@@ -1,17 +1,21 @@
$(function () {
- $('.addMoney').on('click',addMoney);
- $('.removeMoney').on('click',removeMoney);
+ $('.addMoney').on('click', addMoney);
+ $('.removeMoney').on('click', removeMoney);
+
+ if (typeof(googleLineChart) == 'function' && typeof(piggyBankID) != 'undefined') {
+ googleLineChart('chart/piggyhistory/' + piggyBankID, 'piggybank-history');
+ }
});
function addMoney(e) {
- var pigID = parseInt($(e.target).data('id'));
+ var pigID = parseInt($(e.target).data('id'));
$('#moneyManagementModal').empty().load('piggybanks/add/' + pigID).modal('show');
return false;
}
function removeMoney(e) {
- var pigID = parseInt($(e.target).data('id'));
+ var pigID = parseInt($(e.target).data('id'));
$('#moneyManagementModal').empty().load('piggybanks/remove/' + pigID).modal('show');
return false;