diff --git a/app/Http/Controllers/PiggyBankController.php b/app/Http/Controllers/PiggyBankController.php new file mode 100644 index 0000000000..0a83fb239e --- /dev/null +++ b/app/Http/Controllers/PiggyBankController.php @@ -0,0 +1,16 @@ +_repository->getWithdrawalsPaginated(50); + $types = ['Withdrawal']; + break; + case 'revenue': + case 'deposit': + $subTitleIcon = 'fa-long-arrow-right'; + $subTitle = 'Revenue, income and deposits'; + // $journals = $this->_repository->getDepositsPaginated(50); + $types = ['Deposit']; + break; + case 'transfer': + case 'transfers': + $subTitleIcon = 'fa-arrows-h'; + $subTitle = 'Transfers'; + //$journals = $this->_repository->getTransfersPaginated(50); + $types = ['Transfer']; + break; + } + + $page = intval(\Input::get('page')); + $offset = $page > 0 ? ($page - 1) * 50 : 0; + + $set = Auth::user()->transactionJournals()->transactionTypes($types)->withRelevantData()->take(50)->offset($offset)->orderBy('date', 'DESC')->get( + ['transaction_journals.*'] + ); + $count = Auth::user()->transactionJournals()->transactionTypes($types)->count(); + $journals = new LengthAwarePaginator($set, $count, 50, $page); + $journals->setPath('transactions/' . $what); + + return View::make('transactions.index', compact('subTitle', 'what', 'subTitleIcon', 'journals')); + + } + +} diff --git a/app/Http/routes.php b/app/Http/routes.php index 955a9e6867..35290611d2 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -161,13 +161,13 @@ Route::group( * Piggy Bank Controller */ // piggy bank controller - Route::get('/piggy_banks', ['uses' => 'PiggyBankController@index', 'as' => 'piggy_banks.index']); - //Route::get('/piggy_banks/add/{piggyBank}', ['uses' => 'PiggyBankController@add']); # add money - //Route::get('/piggy_banks/remove/{piggyBank}', ['uses' => 'PiggyBankController@remove']); #remove money - //Route::get('/piggy_banks/create', ['uses' => 'PiggyBankController@create', 'as' => 'piggy_banks.create']); - //Route::get('/piggy_banks/edit/{piggyBank}', ['uses' => 'PiggyBankController@edit', 'as' => 'piggy_banks.edit']); - //Route::get('/piggy_banks/delete/{piggyBank}', ['uses' => 'PiggyBankController@delete', 'as' => 'piggy_banks.delete']); - //Route::get('/piggy_banks/show/{piggyBank}', ['uses' => 'PiggyBankController@show', 'as' => 'piggy_banks.show']); + Route::get('/piggy-banks', ['uses' => 'PiggyBankController@index', 'as' => 'piggy_banks.index']); + //Route::get('/piggy-banks/add/{piggyBank}', ['uses' => 'PiggyBankController@add']); # add money + //Route::get('/piggy-banks/remove/{piggyBank}', ['uses' => 'PiggyBankController@remove']); #remove money + //Route::get('/piggy-banks/create', ['uses' => 'PiggyBankController@create', 'as' => 'piggy_banks.create']); + //Route::get('/piggy-banks/edit/{piggyBank}', ['uses' => 'PiggyBankController@edit', 'as' => 'piggy_banks.edit']); + //Route::get('/piggy-banks/delete/{piggyBank}', ['uses' => 'PiggyBankController@delete', 'as' => 'piggy_banks.delete']); + //Route::get('/piggy-banks/show/{piggyBank}', ['uses' => 'PiggyBankController@show', 'as' => 'piggy_banks.show']); /** * Preferences Controller diff --git a/app/Repositories/Account/AccountRepository.php b/app/Repositories/Account/AccountRepository.php index 309b41a694..d62e6c36dd 100644 --- a/app/Repositories/Account/AccountRepository.php +++ b/app/Repositories/Account/AccountRepository.php @@ -46,7 +46,6 @@ class AccountRepository implements AccountRepositoryInterface public function getJournals(Account $account, $page, $range = 'session') { $offset = $page * 50; - $items = []; $query = Auth::user() ->transactionJournals() ->withRelevantData() @@ -58,14 +57,9 @@ class AccountRepository implements AccountRepositoryInterface $query->before(Session::get('end', Carbon::now()->startOfMonth())); $query->after(Session::get('start', Carbon::now()->startOfMonth())); } - $count = $query->count(); - $set = $query->take(50)->offset($offset)->get(['transaction_journals.*']); - - foreach ($set as $entry) { - $items[] = $entry; - } - - $paginator = new LengthAwarePaginator($items, $count, 50, $page); + $count = $query->count(); + $set = $query->take(50)->offset($offset)->get(['transaction_journals.*']); + $paginator = new LengthAwarePaginator($set, $count, 50, $page); return $paginator; diff --git a/app/Repositories/Budget/BudgetRepository.php b/app/Repositories/Budget/BudgetRepository.php index 8723e9675e..ba09cdb9e5 100644 --- a/app/Repositories/Budget/BudgetRepository.php +++ b/app/Repositories/Budget/BudgetRepository.php @@ -54,12 +54,7 @@ class BudgetRepository implements BudgetRepositoryInterface $set = $setQuery->get(['transaction_journals.*']); $count = $countQuery->count(); - $items = []; - foreach ($set as $entry) { - $items[] = $entry; - } - - return new LengthAwarePaginator($items, $count, $take, $offset); + return new LengthAwarePaginator($set, $count, $take, $offset); } /** diff --git a/resources/views/list/journals-full.blade.php b/resources/views/list/journals-full.blade.php index b9c4908852..804690c354 100644 --- a/resources/views/list/journals-full.blade.php +++ b/resources/views/list/journals-full.blade.php @@ -1,5 +1,5 @@ -@if(is_object($journals) && method_exists($journals, 'links')) -{{$journals->links()}} +@if(is_object($journals) && method_exists($journals, 'render')) +{!! $journals->render() !!} @endif
+ +
+ ++ Deleting stuff from Firefly is permanent. This action will remove the transaction and all + associated data. +
++ This action will not destroy categories, piggy banks, accounts, etc. +
++ Are you sure? +
+ ++ +
+ +Date | +{{{$journal->date->format('jS F Y')}}} | +
Currency | +{{{$journal->transactioncurrency->code}}} | +
Type | +{{{$journal->transactiontype->type}}} | +
Completed | ++ @if($journal->completed == 1) + Yes + @else + No + @endif + | +
{{$budget->class}} | +{{{$budget->name}}} | +
{{$category->class}} | +{{{$category->name}}} | +
+ No related transactions +
++ | {{{$jrnl->description}}} | +{{Amount::formatJournal($jrnl, $jrnl->getAmount())}} | +
Amount | +{{Amount::formatTransaction($t)}} | +
New balance | +{{Amount::format($t->before)}} → {{Amount::format($t->after)}} | +
Description | +{{{$t->description}}} | +