/** * @param BudgetRepositoryInterface $repository * @param Budget $budget * @param LimitRepetition $repetition * * @return \Illuminate\View\View */ public function show(BudgetRepositoryInterface $repository, Budget $budget, LimitRepetition $repetition = null) { if (!is_null($repetition->id) && $repetition->budgetLimit->budget->id != $budget->id) { $message = 'Invalid selection.'; return view('error', compact('message')); } $journals = $repository->getJournals($budget, $repetition); if (is_null($repetition->id)) { $limits = $repository->getBudgetLimits($budget); $subTitle = e($budget->name); } else { $limits = [$repetition->budgetLimit]; $subTitle = trans('firefly.budget_in_month', ['name' => $budget->name, 'month' => $repetition->startdate->formatLocalized($this->monthFormat)]); } $journals->setPath('/budgets/show/' . $budget->id); return view('budgets.show', compact('limits', 'budget', 'repetition', 'journals', 'subTitle')); }