Fixed route when removing piggy banks.

This commit is contained in:
James Cole
2014-09-28 08:52:24 +02:00
parent aa9eb8ca64
commit 7d2627515f

View File

@@ -15,8 +15,8 @@ use Firefly\Storage\Piggybank\PiggybankRepositoryInterface as PRI;
class PiggybankController extends BaseController class PiggybankController extends BaseController
{ {
protected $_repository;
protected $_accounts; protected $_accounts;
protected $_repository;
/** /**
* @param PRI $repository * @param PRI $repository
@@ -94,7 +94,7 @@ class PiggybankController extends BaseController
View::share('subTitle', 'Delete "' . $piggyBank->name . '"'); View::share('subTitle', 'Delete "' . $piggyBank->name . '"');
if ($piggyBank->repeats == 1) { if ($piggyBank->repeats == 1) {
View::share('title', 'Repeated expenses'); View::share('title', 'Repeated expenses');
View::share('mainTitleIcon', 'fa-rotate-right'); View::share('mainTitleIcon', 'fa-rotate-right')
} else { } else {
View::share('title', 'Piggy banks'); View::share('title', 'Piggy banks');
View::share('mainTitleIcon', 'fa-sort-amount-asc'); View::share('mainTitleIcon', 'fa-sort-amount-asc');
@@ -111,11 +111,18 @@ class PiggybankController extends BaseController
public function destroy(Piggybank $piggyBank) public function destroy(Piggybank $piggyBank)
{ {
Event::fire('piggybanks.destroy', [$piggyBank]); Event::fire('piggybanks.destroy', [$piggyBank]);
if ($piggyBank->repeats == 1) {
$route = 'piggybanks.index.repeated';
$message = 'Repeated expense';
} else {
$route = 'piggybanks.index.piggybanks';
$message = 'Piggybank';
}
$this->_repository->destroy($piggyBank); $this->_repository->destroy($piggyBank);
Session::flash('success', 'Piggy bank deleted.'); Session::flash('success', $message . ' deleted.');
return Redirect::route('piggybanks.index'); return Redirect::route($route);
} }
/** /**
@@ -136,7 +143,6 @@ class PiggybankController extends BaseController
View::share('subTitle', 'Edit "' . $piggyBank->name . '"'); View::share('subTitle', 'Edit "' . $piggyBank->name . '"');
if ($piggyBank->repeats == 1) { if ($piggyBank->repeats == 1) {
View::share('title', 'Repeated expenses'); View::share('title', 'Repeated expenses');
View::share('mainTitleIcon', 'fa-rotate-left'); View::share('mainTitleIcon', 'fa-rotate-left');
@@ -155,73 +161,6 @@ class PiggybankController extends BaseController
} }
/**
* @return $this
*/
public function piggybanks()
{
$countRepeating = $this->_repository->countRepeating();
$countNonRepeating = $this->_repository->countNonrepeating();
$piggybanks = $this->_repository->get();
// get the accounts with each piggy bank and check their balance; Fireflyy might needs to
// show the user a correction.
$accounts = [];
/** @var \Piggybank $piggybank */
foreach ($piggybanks as $piggybank) {
$account = $piggybank->account;
$id = $account->id;
if (!isset($accounts[$id])) {
$accounts[$id] = ['account' => $account, 'left' => $this->_repository->leftOnAccount($account)];
}
}
View::share('title', 'Piggy banks');
View::share('subTitle', 'Save for big expenses');
View::share('mainTitleIcon', 'fa-sort-amount-asc');
return View::make('piggybanks.index')->with('piggybanks', $piggybanks)
->with('countRepeating', $countRepeating)
->with('countNonRepeating', $countNonRepeating)
->with('accounts', $accounts);
}
/**
* @return $this
*/
public function repeated()
{
$countRepeating = $this->_repository->countRepeating();
$countNonRepeating = $this->_repository->countNonrepeating();
$piggybanks = $this->_repository->get();
// get the accounts with each piggy bank and check their balance; Fireflyy might needs to
// show the user a correction.
$accounts = [];
/** @var \Piggybank $piggybank */
foreach ($piggybanks as $piggybank) {
$account = $piggybank->account;
$id = $account->id;
if (!isset($accounts[$id])) {
$accounts[$id] = ['account' => $account, 'left' => $this->_repository->leftOnAccount($account)];
}
}
View::share('title', 'Repeated expenses');
View::share('subTitle', 'Save for returning bills');
View::share('mainTitleIcon', 'fa-rotate-left');
return View::make('piggybanks.index')->with('piggybanks', $piggybanks)
->with('countRepeating', $countRepeating)
->with('countNonRepeating', $countNonRepeating)
->with('accounts', $accounts);
}
/** /**
* @param Piggybank $piggyBank * @param Piggybank $piggyBank
* *
@@ -261,6 +200,39 @@ class PiggybankController extends BaseController
return Redirect::route('piggybanks.index'); return Redirect::route('piggybanks.index');
} }
/**
* @return $this
*/
public function piggybanks()
{
$countRepeating = $this->_repository->countRepeating();
$countNonRepeating = $this->_repository->countNonrepeating();
$piggybanks = $this->_repository->get();
// get the accounts with each piggy bank and check their balance; Fireflyy might needs to
// show the user a correction.
$accounts = [];
/** @var \Piggybank $piggybank */
foreach ($piggybanks as $piggybank) {
$account = $piggybank->account;
$id = $account->id;
if (!isset($accounts[$id])) {
$accounts[$id] = ['account' => $account, 'left' => $this->_repository->leftOnAccount($account)];
}
}
View::share('title', 'Piggy banks');
View::share('subTitle', 'Save for big expenses');
View::share('mainTitleIcon', 'fa-sort-amount-asc');
return View::make('piggybanks.index')->with('piggybanks', $piggybanks)
->with('countRepeating', $countRepeating)
->with('countNonRepeating', $countNonRepeating)
->with('accounts', $accounts);
}
/** /**
* @param Piggybank $piggyBank * @param Piggybank $piggyBank
* *
@@ -277,6 +249,40 @@ class PiggybankController extends BaseController
)->with('piggybank', $piggyBank); )->with('piggybank', $piggyBank);
} }
/**
* @return $this
*/
public function repeated()
{
$countRepeating = $this->_repository->countRepeating();
$countNonRepeating = $this->_repository->countNonrepeating();
$piggybanks = $this->_repository->get();
// get the accounts with each piggy bank and check their balance; Fireflyy might needs to
// show the user a correction.
$accounts = [];
/** @var \Piggybank $piggybank */
foreach ($piggybanks as $piggybank) {
$account = $piggybank->account;
$id = $account->id;
if (!isset($accounts[$id])) {
$accounts[$id] = ['account' => $account, 'left' => $this->_repository->leftOnAccount($account)];
}
}
View::share('title', 'Repeated expenses');
View::share('subTitle', 'Save for returning bills');
View::share('mainTitleIcon', 'fa-rotate-left');
return View::make('piggybanks.index')->with('piggybanks', $piggybanks)
->with('countRepeating', $countRepeating)
->with('countNonRepeating', $countNonRepeating)
->with('accounts', $accounts);
}
/** /**
* *
*/ */