diff --git a/app/controllers/JsonController.php b/app/controllers/JsonController.php index 9e9b279396..1d29467199 100644 --- a/app/controllers/JsonController.php +++ b/app/controllers/JsonController.php @@ -1,15 +1,23 @@ components = $components; $this->accounts = $accounts; + $this->categories = $categories; + $this->budgets = $budgets; } /** @@ -32,7 +40,13 @@ class JsonController extends BaseController */ public function categories() { - $list = $this->components->get(); + $list = $this->categories->get(); + $return = []; + foreach ($list as $entry) { + $return[] = $entry->name; + } + + return Response::json($return); } diff --git a/app/lib/Firefly/Storage/Budget/BudgetRepositoryInterface.php b/app/lib/Firefly/Storage/Budget/BudgetRepositoryInterface.php new file mode 100644 index 0000000000..6148ca4705 --- /dev/null +++ b/app/lib/Firefly/Storage/Budget/BudgetRepositoryInterface.php @@ -0,0 +1,8 @@ +categories()->get(); + } + +} \ No newline at end of file diff --git a/app/lib/Firefly/Storage/StorageServiceProvider.php b/app/lib/Firefly/Storage/StorageServiceProvider.php index b551b8eb34..e286c16e56 100644 --- a/app/lib/Firefly/Storage/StorageServiceProvider.php +++ b/app/lib/Firefly/Storage/StorageServiceProvider.php @@ -34,6 +34,15 @@ class StorageServiceProvider extends ServiceProvider 'Firefly\Storage\Component\ComponentRepositoryInterface', 'Firefly\Storage\Component\EloquentComponentRepository' ); + + $this->app->bind( + 'Firefly\Storage\Budget\BudgetRepositoryInterface', + 'Firefly\Storage\Budget\EloquentBudgetRepository' + ); + $this->app->bind( + 'Firefly\Storage\Category\CategoryRepositoryInterface', + 'Firefly\Storage\Category\EloquentCategoryRepository' + ); } } \ No newline at end of file diff --git a/app/models/User.php b/app/models/User.php index b988887997..0f7886e2b8 100644 --- a/app/models/User.php +++ b/app/models/User.php @@ -49,4 +49,19 @@ class User extends Elegant implements UserInterface, RemindableInterface return $this->hasMany('Preference'); } + public function components() + { + return $this->hasMany('Component'); + } + + public function budgets() + { + return $this->hasMany('Budget'); + } + + public function categories() + { + return $this->hasMany('Category'); + } + } \ No newline at end of file diff --git a/public/assets/javascript/withdrawal.js b/public/assets/javascript/withdrawal.js index 863677864e..d5221e6163 100644 --- a/public/assets/javascript/withdrawal.js +++ b/public/assets/javascript/withdrawal.js @@ -1,3 +1,7 @@ -$.getJSON('accounts/beneficiaries').success(function (data) { +$.getJSON('json/beneficiaries').success(function (data) { $('input[name="beneficiary"]').typeahead({ source: data }); +}); + +$.getJSON('json/categories').success(function (data) { + $('input[name="category"]').typeahead({ source: data }); }); \ No newline at end of file