diff --git a/app/Http/Controllers/BudgetController.php b/app/Http/Controllers/BudgetController.php index 71f11a9630..1459349260 100644 --- a/app/Http/Controllers/BudgetController.php +++ b/app/Http/Controllers/BudgetController.php @@ -198,13 +198,13 @@ class BudgetController extends Controller $prev->subDay(); $prev = app('navigation')->startOfPeriod($prev, $range); $this->repository->cleanupBudgets(); - $budgets = $this->repository->getActiveBudgets(); - $total = $budgets->count(); - $budgets = $budgets->slice(($page - 1) * $pageSize, $pageSize); + $allBudgets = $this->repository->getActiveBudgets(); + $total = $allBudgets->count(); + $budgets = $allBudgets->slice(($page - 1) * $pageSize, $pageSize); $inactive = $this->repository->getInactiveBudgets(); $periodStart = $start->formatLocalized($this->monthAndDayFormat); $periodEnd = $end->formatLocalized($this->monthAndDayFormat); - $budgetInformation = $this->repository->collectBudgetInformation($budgets, $start, $end); + $budgetInformation = $this->repository->collectBudgetInformation($allBudgets, $start, $end); $defaultCurrency = app('amount')->getDefaultCurrency(); $available = $this->repository->getAvailableBudget($defaultCurrency, $start, $end); $spent = array_sum(array_column($budgetInformation, 'spent')); @@ -252,7 +252,7 @@ class BudgetController extends Controller 'currentMonth', 'next', 'nextText', - 'prev', + 'prev', 'allBudgets', 'prevText', 'periodStart', 'periodEnd', @@ -420,11 +420,12 @@ class BudgetController extends Controller $end = Carbon::createFromFormat('Y-m-d', $request->string('end')); $defaultCurrency = app('amount')->getDefaultCurrency(); $amount = $request->get('amount'); + $page = $request->integer('page') === 0 ? 1 : $request->integer('page'); $this->repository->setAvailableBudget($defaultCurrency, $start, $end, $amount); Preferences::mark(); - return redirect(route('budgets.index', [$start->format('Y-m-d')])); + return redirect(route('budgets.index', [$start->format('Y-m-d')]) . '?page=' . $page); } /** @@ -549,13 +550,14 @@ class BudgetController extends Controller * * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ - public function updateIncome(Carbon $start, Carbon $end) + public function updateIncome(Request $request, Carbon $start, Carbon $end) { $defaultCurrency = app('amount')->getDefaultCurrency(); $available = $this->repository->getAvailableBudget($defaultCurrency, $start, $end); $available = round($available, $defaultCurrency->decimal_places); + $page = intval($request->get('page')); - return view('budgets.income', compact('available', 'start', 'end')); + return view('budgets.income', compact('available', 'start', 'end', 'page')); } /** diff --git a/public/js/ff/budgets/index.js b/public/js/ff/budgets/index.js index 6a36dae5a0..85cd5cd665 100644 --- a/public/js/ff/budgets/index.js +++ b/public/js/ff/budgets/index.js @@ -18,7 +18,7 @@ * along with Firefly III. If not, see . */ -/** global: infoIncomeUri, token, spent, budgeted, available, currencySymbol, budgetIndexUri, updateIncomeUri, periodStart, periodEnd, budgetAmountUri, accounting */ +/** global: infoIncomeUri, page, token, spent, budgeted, available, currencySymbol, budgetIndexUri, updateIncomeUri, periodStart, periodEnd, budgetAmountUri, accounting */ /** * */ @@ -44,7 +44,7 @@ $(function () { var sel = $(e.target).val(); if (sel !== "x") { var newUri = budgetIndexUri.replace("REPLACE", sel); - window.location.assign(newUri); + window.location.assign(newUri + "?page=" + page); } }); diff --git a/resources/views/budgets/income.twig b/resources/views/budgets/income.twig index 201e2f2a3c..09a919b3da 100644 --- a/resources/views/budgets/income.twig +++ b/resources/views/budgets/income.twig @@ -14,6 +14,7 @@ +
{{ getCurrencySymbol()|raw }}
diff --git a/resources/views/budgets/index.twig b/resources/views/budgets/index.twig index 6dff1b45c3..627bdf2efd 100644 --- a/resources/views/budgets/index.twig +++ b/resources/views/budgets/index.twig @@ -108,9 +108,9 @@
@@ -237,13 +237,13 @@