From ab508a3d9ea4f8f77b4b0b05774975c37d05a1fb Mon Sep 17 00:00:00 2001 From: James Cole Date: Wed, 12 Nov 2014 20:52:34 +0100 Subject: [PATCH] Recreated the JSON controller to fix auto-complete forms. --- app/controllers/JsonController.php | 65 ++++++++++++++++++++++++++++++ app/routes.php | 6 +++ 2 files changed, 71 insertions(+) create mode 100644 app/controllers/JsonController.php diff --git a/app/controllers/JsonController.php b/app/controllers/JsonController.php new file mode 100644 index 0000000000..3dbe758b39 --- /dev/null +++ b/app/controllers/JsonController.php @@ -0,0 +1,65 @@ +get(); + $return = []; + foreach ($list as $entry) { + $return[] = $entry->name; + } + + return Response::json($return); + + + } + + /** + * Returns a JSON list of all beneficiaries. + * + * @return \Illuminate\Http\JsonResponse + */ + public function expenseAccounts() + { + /** @var \FireflyIII\Database\Account $accounts */ + $accounts = App::make('FireflyIII\Database\Account'); + $list = $accounts->getExpenseAccounts(); + $return = []; + foreach ($list as $entry) { + $return[] = $entry->name; + } + + return Response::json($return); + + } + + /** + * @return \Illuminate\Http\JsonResponse + */ + public function revenueAccounts() + { + /** @var \FireflyIII\Database\Account $accounts */ + $accounts = App::make('FireflyIII\Database\Account'); + $list = $accounts->getRevenueAccounts(); + $return = []; + foreach ($list as $entry) { + $return[] = $entry->name; + } + + return Response::json($return); + + } +} \ No newline at end of file diff --git a/app/routes.php b/app/routes.php index eb112edd04..81fa459a25 100644 --- a/app/routes.php +++ b/app/routes.php @@ -174,6 +174,12 @@ Route::group( Route::get('/', ['uses' => 'HomeController@index', 'as' => 'index']); Route::get('/flush', ['uses' => 'HomeController@flush', 'as' => 'flush']); # even though nothing is cached. + // JSON controller + Route::get('/json/expense-accounts', ['uses' => 'JsonController@expenseAccounts', 'as' => 'json.expense-accounts']); + Route::get('/json/revenue-accounts', ['uses' => 'JsonController@revenueAccounts', 'as' => 'json.revenue-accounts']); + Route::get('/json/categories', ['uses' => 'JsonController@categories', 'as' => 'json.categories']); + + // piggy bank controller Route::get('/piggybanks', ['uses' => 'PiggybankController@index', 'as' => 'piggybanks.index']); Route::get('/piggybanks/add/{piggybank}', ['uses' => 'PiggybankController@add']); # add money