/** * Prepare view for authenticated user with several accounts * @param Collection $accounts Account collection * @return Illuminate\View\View|\Illuminate\Contracts\View\Factory View */ private function builIndex(Collection $accounts) { $data = ['accounts' => $accounts, 'accountsBalance' => $this->getAccountsBalance($accounts), 'accountsChart' => DonutChart::forge($accounts, Carbon::today()), 'envelopesBalance' => $this->getEnvelopesBalance($accounts), 'envelopesChart' => DonutChart::forge(Envelope::whereIn('account_id', $accounts->pluck('id'))->get(), Carbon::today())]; return view('home.authenticated', $data); }
/** * Render events panel with chart * @param string $accountId Account primary key * @return Illuminate\View\View|\Illuminate\Contracts\View\Factory View */ public function getEnvelopes($accountId) { $account = Auth::user()->accounts()->findOrFail($accountId); $data = ['account' => $account, 'chart' => DonutChart::forge($account->envelopes, Carbon::today())]; return view('account.summary.envelopes', $data); }
/** * Render balance panel with chart * @param string $envelopeId Envelope primary key * @return Illuminate\View\View|\Illuminate\Contracts\View\Factory View */ public function getBalance($envelopeId) { $envelope = Auth::user()->envelopes()->findOrFail($envelopeId); $data = ['envelope' => $envelope, 'chart' => DonutChart::forge($envelope, Carbon::today())]; return view('envelope.summary.balance', $data); }