| 
									
										
										
										
											2015-02-22 09:46:21 +01:00
										 |  |  | <?php | 
					
						
							| 
									
										
										
										
											2016-05-20 12:27:31 +02:00
										 |  |  | /** | 
					
						
							|  |  |  |  * breadcrumbs.php | 
					
						
							| 
									
										
										
										
											2017-10-21 08:40:00 +02:00
										 |  |  |  * Copyright (c) 2017 thegrumpydictator@gmail.com | 
					
						
							| 
									
										
										
										
											2016-05-20 12:27:31 +02:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2017-10-21 08:40:00 +02:00
										 |  |  |  * This file is part of Firefly III. | 
					
						
							| 
									
										
										
										
											2016-10-05 06:52:15 +02:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2017-10-21 08:40:00 +02:00
										 |  |  |  * Firefly III is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  |  * it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  |  * the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  |  * (at your option) any later version. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Firefly III is distributed in the hope that it will be useful, | 
					
						
							|  |  |  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  |  * GNU General Public License for more details. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * You should have received a copy of the GNU General Public License | 
					
						
							| 
									
										
										
										
											2017-12-17 14:41:58 +01:00
										 |  |  |  * along with Firefly III. If not, see <http://www.gnu.org/licenses/>. | 
					
						
							| 
									
										
										
										
											2016-05-20 12:27:31 +02:00
										 |  |  |  */ | 
					
						
							| 
									
										
										
										
											2017-03-24 15:15:12 +01:00
										 |  |  | declare(strict_types=1); | 
					
						
							| 
									
										
										
										
											2017-07-23 08:32:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-02-22 09:46:21 +01:00
										 |  |  | use Carbon\Carbon; | 
					
						
							| 
									
										
										
										
											2017-12-23 20:46:52 +01:00
										 |  |  | use DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator; | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | use DaveJamesMiller\Breadcrumbs\Exceptions\DuplicateBreadcrumbException; | 
					
						
							| 
									
										
										
										
											2016-02-10 14:36:21 +01:00
										 |  |  | use FireflyIII\Exceptions\FireflyException; | 
					
						
							| 
									
										
										
										
											2015-02-22 15:40:13 +01:00
										 |  |  | use FireflyIII\Models\Account; | 
					
						
							| 
									
										
										
										
											2016-02-10 14:36:21 +01:00
										 |  |  | use FireflyIII\Models\Attachment; | 
					
						
							| 
									
										
										
										
											2015-02-25 15:19:14 +01:00
										 |  |  | use FireflyIII\Models\Bill; | 
					
						
							| 
									
										
										
										
											2015-03-29 21:27:51 +02:00
										 |  |  | use FireflyIII\Models\Budget; | 
					
						
							| 
									
										
										
										
											2016-12-30 07:39:42 +01:00
										 |  |  | use FireflyIII\Models\BudgetLimit; | 
					
						
							| 
									
										
										
										
											2015-02-23 21:19:16 +01:00
										 |  |  | use FireflyIII\Models\Category; | 
					
						
							| 
									
										
										
										
											2016-12-17 08:35:03 +01:00
										 |  |  | use FireflyIII\Models\ImportJob; | 
					
						
							| 
									
										
										
										
											2017-08-21 07:13:03 +02:00
										 |  |  | use FireflyIII\Models\LinkType; | 
					
						
							| 
									
										
										
										
											2015-02-24 21:10:25 +01:00
										 |  |  | use FireflyIII\Models\PiggyBank; | 
					
						
							| 
									
										
										
										
											2018-06-10 16:59:03 +02:00
										 |  |  | use FireflyIII\Models\Recurrence; | 
					
						
							| 
									
										
										
										
											2016-02-10 14:36:21 +01:00
										 |  |  | use FireflyIII\Models\Rule; | 
					
						
							|  |  |  | use FireflyIII\Models\RuleGroup; | 
					
						
							| 
									
										
										
										
											2015-05-03 12:58:55 +02:00
										 |  |  | use FireflyIII\Models\Tag; | 
					
						
							| 
									
										
										
										
											2015-05-02 10:40:20 +02:00
										 |  |  | use FireflyIII\Models\TransactionCurrency; | 
					
						
							| 
									
										
										
										
											2015-03-29 21:27:51 +02:00
										 |  |  | use FireflyIII\Models\TransactionJournal; | 
					
						
							| 
									
										
										
										
											2017-08-23 21:21:42 +02:00
										 |  |  | use FireflyIII\Models\TransactionJournalLink; | 
					
						
							| 
									
										
										
										
											2016-10-29 15:14:33 +02:00
										 |  |  | use FireflyIII\Models\TransactionType; | 
					
						
							| 
									
										
										
										
											2016-10-15 07:11:53 +02:00
										 |  |  | use FireflyIII\User; | 
					
						
							| 
									
										
										
										
											2016-12-11 10:38:06 +01:00
										 |  |  | use Illuminate\Support\Collection; | 
					
						
							| 
									
										
										
										
											2015-05-03 12:58:55 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-08-05 18:59:15 +02:00
										 |  |  | if (!function_exists('limitStringLength')) { | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Cuts away the middle of a string when it's very long. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @param string $string | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return string | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     function limitStringLength(string $string): string | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         $maxChars = 75; | 
					
						
							|  |  |  |         $length   = \strlen($string); | 
					
						
							|  |  |  |         $result   = $string; | 
					
						
							|  |  |  |         if ($length > $maxChars) { | 
					
						
							|  |  |  |             $result = substr_replace($string, ' ... ', $maxChars / 2, $length - $maxChars); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         return $result; | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | try { | 
					
						
							|  |  |  |     // HOME
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'home', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.home'), route('index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.home'), route('index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // ACCOUNTS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $what) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.' . strtolower(e($what)) . '_accounts'), route('accounts.index', [$what])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $what) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('accounts.index', $what); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.new_' . strtolower(e($what)) . '_account'), route('accounts.create', [$what])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Account $account, Carbon $start = null, Carbon $end = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $what = config('firefly.shortNamesByFullName.' . $account->accountType->type); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->parent('accounts.index', $what); | 
					
						
							| 
									
										
										
										
											2018-08-28 05:21:23 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($account->name), route('accounts.show.all', [$account->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             if (null !== $start && null !== $end) { | 
					
						
							|  |  |  |                 $title = trans( | 
					
						
							|  |  |  |                     'firefly.between_dates_breadcrumb', | 
					
						
							|  |  |  |                     ['start' => $start ? $start->formatLocalized((string)trans('config.month_and_day')) : '', | 
					
						
							|  |  |  |                      'end'   => $end ? $end->formatLocalized((string)trans('config.month_and_day')) : '',] | 
					
						
							|  |  |  |                 ); | 
					
						
							|  |  |  |                 $breadcrumbs->push($title, route('accounts.show', $account)); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.show.all', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Account $account) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $what = config('firefly.shortNamesByFullName.' . $account->accountType->type); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->parent('accounts.index', $what); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($account->name), route('accounts.show', [$account->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.reconcile', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Account $account) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('accounts.show', $account); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.reconcile_account', ['account' => $account->name]), route('accounts.reconcile', [$account->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.reconcile.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Account $account, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('accounts.show', $account); | 
					
						
							|  |  |  |             $title = trans('firefly.reconciliation') . ' "' . $journal->description . '"'; | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('accounts.reconcile.show', [$journal->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Account $account) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('accounts.show', $account); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.delete_account', ['name' => limitStringLength($account->name)]), route('accounts.delete', [$account->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Account $account) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('accounts.show', $account); | 
					
						
							|  |  |  |             $what = config('firefly.shortNamesByFullName.' . $account->accountType->type); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-08-05 15:34:20 +02:00
										 |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 trans('firefly.edit_' . $what . '_account', ['name' => limitStringLength($account->name)]), route('accounts.edit', [$account->id]) | 
					
						
							|  |  |  |             ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // ADMIN
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.administration'), route('admin.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.users', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.list_all_users'), route('admin.users')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.users.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, User $user) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.users'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.single_user_administration', ['email' => $user->email]), route('admin.users.show', [$user->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.users.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, User $user) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.users'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.edit_user', ['email' => $user->email]), route('admin.users.edit', [$user->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.users.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, User $user) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.users'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.delete_user', ['email' => $user->email]), route('admin.users.delete', [$user->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.users.domains', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.blocked_domains'), route('admin.users.domains')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.configuration.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.instance_configuration'), route('admin.configuration.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.update-check', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.update_check_title'), route('admin.update-check')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.links.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.journal_link_configuration'), route('admin.links.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.links.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.links.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.create_new_link_type'), route('admin.links.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.links.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, LinkType $linkType) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.links.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.overview_for_link', ['name' => limitStringLength($linkType->name)]), route('admin.links.show', [$linkType->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.links.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, LinkType $linkType) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.links.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.edit_link_type', ['name' => limitStringLength($linkType->name)]), route('admin.links.edit', [$linkType->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'admin.links.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, LinkType $linkType) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('admin.links.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.delete_link_type', ['name' => limitStringLength($linkType->name)]), route('admin.links.delete', [$linkType->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.link.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionJournalLink $link) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.delete_journal_link'), route('transactions.link.delete', $link->id)); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // ATTACHMENTS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'attachments.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.attachments'), route('attachments.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'attachments.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Attachment $attachment) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $object = $attachment->attachable; | 
					
						
							|  |  |  |             if ($object instanceof TransactionJournal) { | 
					
						
							|  |  |  |                 $breadcrumbs->parent('transactions.show', $object); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |                 $breadcrumbs->push(limitStringLength($attachment->filename), route('attachments.edit', [$attachment])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'attachments.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Attachment $attachment) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $object = $attachment->attachable; | 
					
						
							|  |  |  |             if ($object instanceof TransactionJournal) { | 
					
						
							|  |  |  |                 $breadcrumbs->parent('transactions.show', $object); | 
					
						
							| 
									
										
										
										
											2018-08-05 15:34:20 +02:00
										 |  |  |                 $breadcrumbs->push( | 
					
						
							|  |  |  |                     trans('firefly.delete_attachment', ['name' => limitStringLength($attachment->filename)]), route('attachments.edit', [$attachment]) | 
					
						
							|  |  |  |                 ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             } else { | 
					
						
							|  |  |  |                 throw new FireflyException('Cannot make breadcrumb for attachment connected to object of type ' . get_class($object)); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // BILLS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'bills.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.bills'), route('bills.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'bills.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('bills.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.newBill'), route('bills.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'bills.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Bill $bill) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('bills.show', $bill); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.edit_bill', ['name' => limitStringLength($bill->name)]), route('bills.edit', [$bill->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'bills.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Bill $bill) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('bills.show', $bill); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.delete_bill', ['name' => limitStringLength($bill->name)]), route('bills.delete', [$bill->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'bills.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Bill $bill) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('bills.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($bill->name), route('bills.show', [$bill->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // BUDGETS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.budgets'), route('budgets.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.create_new_budget'), route('budgets.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Budget $budget) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.show', $budget); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.edit_budget', ['name' => limitStringLength($budget->name)]), route('budgets.edit', [$budget->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Budget $budget) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.show', $budget); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.delete_budget', ['name' => limitStringLength($budget->name)]), route('budgets.delete', [$budget->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.no-budget', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Carbon $start = null, Carbon $end = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.journals_without_budget'), route('budgets.no-budget')); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             if (null !== $start && null !== $end) { | 
					
						
							|  |  |  |                 $title = trans( | 
					
						
							|  |  |  |                     'firefly.between_dates_breadcrumb', | 
					
						
							|  |  |  |                     ['start' => $start->formatLocalized((string)trans('config.month_and_day')), | 
					
						
							|  |  |  |                      'end'   => $end->formatLocalized((string)trans('config.month_and_day')),] | 
					
						
							|  |  |  |                 ); | 
					
						
							|  |  |  |                 $breadcrumbs->push($title, route('budgets.no-budget')); | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2018-07-14 17:23:44 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-14 17:23:44 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.no-budget-all', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-07-14 17:23:44 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.journals_without_budget'), route('budgets.no-budget')); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.everything'), route('budgets.no-budget-all')); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Budget $budget) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($budget->name), route('budgets.show', [$budget->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.everything'), route('budgets.show', [$budget->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'budgets.show.limit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Budget $budget, BudgetLimit $budgetLimit) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('budgets.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($budget->name), route('budgets.show', [$budget->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-02-11 20:45:48 +01:00
										 |  |  |             $title = trans( | 
					
						
							|  |  |  |                 'firefly.between_dates_breadcrumb', | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |                 ['start' => $budgetLimit->start_date->formatLocalized((string)trans('config.month_and_day')), | 
					
						
							|  |  |  |                  'end'   => $budgetLimit->end_date->formatLocalized((string)trans('config.month_and_day')),] | 
					
						
							| 
									
										
										
										
											2018-02-11 20:45:48 +01:00
										 |  |  |             ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 $title, | 
					
						
							|  |  |  |                 route('budgets.show.limit', [$budget->id, $budgetLimit->id]) | 
					
						
							| 
									
										
										
										
											2017-11-15 11:33:07 +01:00
										 |  |  |             ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // CATEGORIES
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'categories.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.categories'), route('categories.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'categories.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('categories.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.new_category'), route('categories.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'categories.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Category $category) { | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->parent('categories.show.all', $category); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.edit_category', ['name' => limitStringLength($category->name)]), route('categories.edit', [$category->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'categories.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Category $category) { | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->parent('categories.show', $category); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.delete_category', ['name' => limitStringLength($category->name)]), route('categories.delete', [$category->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'categories.show', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Category $category, Carbon $start = null, Carbon $end = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('categories.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($category->name), route('categories.show', [$category->id])); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             if (null !== $start && null !== $end) { | 
					
						
							|  |  |  |                 $title = trans( | 
					
						
							|  |  |  |                     'firefly.between_dates_breadcrumb', | 
					
						
							|  |  |  |                     ['start' => $start->formatLocalized((string)trans('config.month_and_day')), | 
					
						
							|  |  |  |                      'end'   => $end->formatLocalized((string)trans('config.month_and_day')),] | 
					
						
							|  |  |  |                 ); | 
					
						
							|  |  |  |                 $breadcrumbs->push($title, route('categories.show', [$category->id])); | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2018-07-14 22:48:22 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-14 22:48:22 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  |         'categories.show.all', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Category $category) { | 
					
						
							| 
									
										
										
										
											2018-07-14 22:48:22 +02:00
										 |  |  |             $breadcrumbs->parent('categories.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push(limitStringLength($category->name), route('categories.show', [$category->id])); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.everything'), route('categories.show.all', [$category->id])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'categories.no-category', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Carbon $start = null, Carbon $end = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('categories.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.journals_without_category'), route('categories.no-category')); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             if (null !== $start && null !== $end) { | 
					
						
							|  |  |  |                 $title = trans( | 
					
						
							|  |  |  |                     'firefly.between_dates_breadcrumb', | 
					
						
							|  |  |  |                     ['start' => $start->formatLocalized((string)trans('config.month_and_day')), | 
					
						
							|  |  |  |                      'end'   => $end->formatLocalized((string)trans('config.month_and_day')),] | 
					
						
							|  |  |  |                 ); | 
					
						
							|  |  |  |                 $breadcrumbs->push($title, route('categories.no-category')); | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2018-07-14 22:48:22 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-14 22:48:22 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         'categories.no-category.all', | 
					
						
							|  |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-07-14 22:48:22 +02:00
										 |  |  |             $breadcrumbs->parent('categories.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.journals_without_category'), route('categories.no-category')); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.everything'), route('categories.no-category.all')); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // CURRENCIES
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'currencies.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.currencies'), route('currencies.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'currencies.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('currencies.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.create_currency'), route('currencies.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'currencies.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionCurrency $currency) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('currencies.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.edit_currency', ['name' => $currency->name]), route('currencies.edit', [$currency->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'currencies.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionCurrency $currency) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('currencies.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.delete_currency', ['name' => $currency->name]), route('currencies.delete', [$currency->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // EXPORT
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'export.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.export_data'), route('export.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // PIGGY BANKS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.piggyBanks'), route('piggy-banks.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('piggy-banks.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.newPiggyBank'), route('piggy-banks.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, PiggyBank $piggyBank) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('piggy-banks.show', $piggyBank); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.edit_piggyBank', ['name' => $piggyBank->name]), route('piggy-banks.edit', [$piggyBank->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, PiggyBank $piggyBank) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('piggy-banks.show', $piggyBank); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.delete_piggy_bank', ['name' => $piggyBank->name]), route('piggy-banks.delete', [$piggyBank->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, PiggyBank $piggyBank) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('piggy-banks.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push($piggyBank->name, route('piggy-banks.show', [$piggyBank->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.add-money-mobile', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, PiggyBank $piggyBank) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('piggy-banks.show', $piggyBank); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.add_money_to_piggy', ['name' => $piggyBank->name]), route('piggy-banks.add-money-mobile', [$piggyBank->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'piggy-banks.remove-money-mobile', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, PiggyBank $piggyBank) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('piggy-banks.show', $piggyBank); | 
					
						
							|  |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 trans('firefly.remove_money_from_piggy_title', ['name' => $piggyBank->name]), | 
					
						
							|  |  |  |                 route('piggy-banks.remove-money-mobile', [$piggyBank->id]) | 
					
						
							| 
									
										
										
										
											2017-11-15 11:33:07 +01:00
										 |  |  |             ); | 
					
						
							| 
									
										
										
										
											2017-11-15 10:52:29 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // IMPORT
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'import.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.import_index_title'), route('import.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2016-12-28 09:56:07 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							| 
									
										
										
										
											2018-04-29 21:20:06 +02:00
										 |  |  |         'import.prerequisites.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $importProvider) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('import.index'); | 
					
						
							| 
									
										
										
										
											2018-04-29 21:20:06 +02:00
										 |  |  |             $breadcrumbs->push(trans('import.prerequisites_breadcrumb_' . $importProvider), route('import.prerequisites.index', [$importProvider])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2017-03-10 19:34:46 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							| 
									
										
										
										
											2018-04-29 21:20:06 +02:00
										 |  |  |         'import.job.configuration.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, ImportJob $job) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('import.index'); | 
					
						
							| 
									
										
										
										
											2018-04-29 21:20:06 +02:00
										 |  |  |             $breadcrumbs->push(trans('import.job_configuration_breadcrumb', ['key' => $job->key]), route('import.job.configuration.index', [$job->key])); | 
					
						
							| 
									
										
										
										
											2017-11-15 10:52:29 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							| 
									
										
										
										
											2018-04-29 21:20:06 +02:00
										 |  |  |         'import.job.status.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, ImportJob $job) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('import.index'); | 
					
						
							| 
									
										
										
										
											2018-04-29 21:20:06 +02:00
										 |  |  |             $breadcrumbs->push(trans('import.job_status_breadcrumb', ['key' => $job->key]), route('import.job.status.index', [$job->key])); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // PREFERENCES
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'preferences.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.preferences'), route('preferences.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'profile.code', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.profile'), route('profile.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // PROFILE
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'profile.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.profile'), route('profile.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'profile.change-password', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('profile.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.changePassword'), route('profile.change-password')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'profile.change-email', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('profile.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.change_email'), route('profile.change-email')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'profile.delete-account', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('profile.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.delete_account'), route('profile.delete-account')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // REPORTS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.reports'), route('reports.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.report.audit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $accountIds, Carbon $start, Carbon $end) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('reports.index'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $monthFormat = (string)trans('config.month_and_day'); | 
					
						
							|  |  |  |             $startString = $start->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $endString   = $end->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $title       = (string)trans('firefly.report_audit', ['start' => $startString, 'end' => $endString]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('reports.report.audit', [$accountIds, $start->format('Ymd'), $end->format('Ymd')])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.report.budget', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $accountIds, string $budgetIds, Carbon $start, Carbon $end) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('reports.index'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $monthFormat = (string)trans('config.month_and_day'); | 
					
						
							|  |  |  |             $startString = $start->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $endString   = $end->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $title       = (string)trans('firefly.report_budget', ['start' => $startString, 'end' => $endString]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('reports.report.budget', [$accountIds, $budgetIds, $start->format('Ymd'), $end->format('Ymd')])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.report.tag', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $accountIds, string $tagTags, Carbon $start, Carbon $end) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('reports.index'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $monthFormat = (string)trans('config.month_and_day'); | 
					
						
							|  |  |  |             $startString = $start->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $endString   = $end->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $title       = (string)trans('firefly.report_tag', ['start' => $startString, 'end' => $endString]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('reports.report.tag', [$accountIds, $tagTags, $start->format('Ymd'), $end->format('Ymd')])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.report.category', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $accountIds, string $categoryIds, Carbon $start, Carbon $end) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('reports.index'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $monthFormat = (string)trans('config.month_and_day'); | 
					
						
							|  |  |  |             $startString = $start->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $endString   = $end->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $title       = (string)trans('firefly.report_category', ['start' => $startString, 'end' => $endString]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('reports.report.category', [$accountIds, $categoryIds, $start->format('Ymd'), $end->format('Ymd')])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.report.account', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $accountIds, string $expenseIds, Carbon $start, Carbon $end) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('reports.index'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $monthFormat = (string)trans('config.month_and_day'); | 
					
						
							|  |  |  |             $startString = $start->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $endString   = $end->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $title       = (string)trans('firefly.report_account', ['start' => $startString, 'end' => $endString]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('reports.report.account', [$accountIds, $expenseIds, $start->format('Ymd'), $end->format('Ymd')])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'reports.report.default', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $accountIds, Carbon $start, Carbon $end) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('reports.index'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $monthFormat = (string)trans('config.month_and_day'); | 
					
						
							|  |  |  |             $startString = $start->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $endString   = $end->formatLocalized($monthFormat); | 
					
						
							|  |  |  |             $title       = (string)trans('firefly.report_default', ['start' => $startString, 'end' => $endString]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('reports.report.default', [$accountIds, $start->format('Ymd'), $end->format('Ymd')])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // New user Controller
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'new-user.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.getting_started'), route('new-user.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-06-10 16:59:03 +02:00
										 |  |  |     // Recurring transactions controller:
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'recurring.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-06-10 16:59:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.recurrences'), route('recurring.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'recurring.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Recurrence $recurrence) { | 
					
						
							| 
									
										
										
										
											2018-06-10 16:59:03 +02:00
										 |  |  |             $breadcrumbs->parent('recurring.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push($recurrence->title, route('recurring.show', [$recurrence->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-06-23 08:19:29 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'recurring.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Recurrence $recurrence) { | 
					
						
							| 
									
										
										
										
											2018-06-23 08:19:29 +02:00
										 |  |  |             $breadcrumbs->parent('recurring.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.delete_recurring', ['title' => $recurrence->title]), route('recurring.delete', [$recurrence->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-06-17 15:14:34 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'recurring.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Recurrence $recurrence) { | 
					
						
							| 
									
										
										
										
											2018-06-17 15:14:34 +02:00
										 |  |  |             $breadcrumbs->parent('recurring.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.edit_recurrence', ['title' => $recurrence->title]), route('recurring.edit', [$recurrence->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-06-10 16:59:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'recurring.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-06-10 16:59:03 +02:00
										 |  |  |             $breadcrumbs->parent('recurring.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.create_new_recurrence'), route('recurring.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     // Rules
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rules.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.rules'), route('rules.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rules.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 15:34:20 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, RuleGroup $ruleGroup = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							| 
									
										
										
										
											2018-08-05 15:34:20 +02:00
										 |  |  |             if (null === $ruleGroup) { | 
					
						
							|  |  |  |                 $breadcrumbs->push(trans('firefly.make_new_rule_no_group'), route('rules.create')); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             if (null !== $ruleGroup) { | 
					
						
							|  |  |  |                 $breadcrumbs->push(trans('firefly.make_new_rule', ['title' => $ruleGroup->title]), route('rules.create', [$ruleGroup])); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2018-08-05 18:59:15 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rules.create-from-bill', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-08-05 18:59:15 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.make_new_rule_no_group'), route('rules.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rules.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Rule $rule) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.edit_rule', ['title' => $rule->title]), route('rules.edit', [$rule])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rules.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Rule $rule) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.delete_rule', ['title' => $rule->title]), route('rules.delete', [$rule])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rule-groups.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.make_new_rule_group'), route('rule-groups.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rule-groups.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, RuleGroup $ruleGroup) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.edit_rule_group', ['title' => $ruleGroup->title]), route('rule-groups.edit', [$ruleGroup])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rule-groups.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, RuleGroup $ruleGroup) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('firefly.delete_rule_group', ['title' => $ruleGroup->title]), route('rule-groups.delete', [$ruleGroup])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rules.select-transactions', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Rule $rule) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 trans('firefly.rule_select_transactions', ['title' => $rule->title]), route('rules.select-transactions', [$rule]) | 
					
						
							| 
									
										
										
										
											2017-11-15 11:33:07 +01:00
										 |  |  |             ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'rule-groups.select-transactions', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, RuleGroup $ruleGroup) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('rules.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 trans('firefly.rule_group_select_transactions', ['title' => $ruleGroup->title]), route('rule-groups.select-transactions', [$ruleGroup]) | 
					
						
							| 
									
										
										
										
											2017-11-15 11:33:07 +01:00
										 |  |  |             ); | 
					
						
							| 
									
										
										
										
											2017-11-15 10:52:29 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // SEARCH
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'search.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, $query) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.search_result', ['query' => $query]), route('search.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // TAGS
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'tags.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.tags'), route('tags.index')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2016-02-10 14:36:21 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'tags.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('tags.index'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.createTag'), route('tags.create')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2018-03-25 13:30:55 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'tags.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Tag $tag) { | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->parent('tags.show', $tag); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.edit_tag', ['tag' => $tag->tag]), route('tags.edit', [$tag->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2017-11-15 10:52:29 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'tags.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Tag $tag) { | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->parent('tags.show', $tag); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.delete_tag', ['tag' => $tag->tag]), route('tags.delete', [$tag->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'tags.show', | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Tag $tag, Carbon $start = null, Carbon $end = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('tags.index'); | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |             $breadcrumbs->push($tag->tag, route('tags.show', [$tag->id, $start, $end])); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             if (null !== $start && $end !== null) { | 
					
						
							|  |  |  |                 $title = trans( | 
					
						
							|  |  |  |                     'firefly.between_dates_breadcrumb', | 
					
						
							|  |  |  |                     ['start' => $start->formatLocalized((string)trans('config.month_and_day')), | 
					
						
							|  |  |  |                      'end'   => $end->formatLocalized((string)trans('config.month_and_day')),] | 
					
						
							|  |  |  |                 ); | 
					
						
							|  |  |  |                 $breadcrumbs->push($title, route('tags.show', [$tag->id, $start, $end])); | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'tags.show.all', | 
					
						
							|  |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Tag $tag) { | 
					
						
							|  |  |  |             $breadcrumbs->parent('tags.index'); | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |             $breadcrumbs->push($tag->tag, route('tags.show', [$tag->id])); | 
					
						
							|  |  |  |             $title = (string)trans('firefly.all_journals_for_tag', ['tag' => $tag->tag]); | 
					
						
							|  |  |  |             $breadcrumbs->push($title, route('tags.show.all', $tag->id)); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // TRANSACTIONS
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $what, Carbon $start = null, Carbon $end = null) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.' . $what . '_list'), route('transactions.index', [$what])); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             if (null !== $start && null !== $end) { | 
					
						
							|  |  |  |                 // add date range:
 | 
					
						
							|  |  |  |                 $title = trans( | 
					
						
							|  |  |  |                     'firefly.between_dates_breadcrumb', | 
					
						
							|  |  |  |                     ['start' => $start->formatLocalized((string)trans('config.month_and_day')), | 
					
						
							|  |  |  |                      'end'   => $end->formatLocalized((string)trans('config.month_and_day')),] | 
					
						
							|  |  |  |                 ); | 
					
						
							|  |  |  |                 $breadcrumbs->push($title, route('transactions.index', [$what, $start, $end])); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.index.all', | 
					
						
							| 
									
										
										
										
											2018-08-08 17:53:40 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $what) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('home'); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.' . $what . '_list'), route('transactions.index', [$what])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.create', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, string $what) { | 
					
						
							| 
									
										
										
										
											2018-03-25 18:26:35 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.index', $what); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('breadcrumbs.create_' . e($what)), route('transactions.create', [$what])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							| 
									
										
										
										
											2016-12-11 10:38:06 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.show', $journal); | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 trans('breadcrumbs.edit_journal', ['description' => limitStringLength($journal->description)]), route('transactions.edit', [$journal->id]) | 
					
						
							|  |  |  |             ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // also edit reconciliations:
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'accounts.reconcile.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.show', $journal); | 
					
						
							|  |  |  |             $breadcrumbs->push( | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  |                 trans('breadcrumbs.edit_reconciliation', ['description' => limitStringLength($journal->description)]), | 
					
						
							|  |  |  |                 route('accounts.reconcile.edit', [$journal->id]) | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             ); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.show', $journal); | 
					
						
							| 
									
										
										
										
											2018-08-07 21:00:25 +02:00
										 |  |  |             $breadcrumbs->push( | 
					
						
							|  |  |  |                 trans('breadcrumbs.delete_journal', ['description' => limitStringLength($journal->description)]), route('transactions.delete', [$journal->id]) | 
					
						
							|  |  |  |             ); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.show', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-08-05 18:59:15 +02:00
										 |  |  |             $what  = strtolower($journal->transactionType->type); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $title = limitStringLength($journal->description); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.index', $what); | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |             $breadcrumbs->push($title, route('transactions.show', [$journal->id])); | 
					
						
							| 
									
										
										
										
											2017-11-15 10:52:29 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.convert.index', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionType $destinationType, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.show', $journal); | 
					
						
							|  |  |  |             $breadcrumbs->push( | 
					
						
							| 
									
										
										
										
											2018-08-07 20:38:19 +02:00
										 |  |  |                 trans('firefly.convert_to_' . $destinationType->type, ['description' => limitStringLength($journal->description)]), | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |                 route('transactions.convert.index', [strtolower($destinationType->type), $journal->id]) | 
					
						
							|  |  |  |             ); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // MASS TRANSACTION EDIT / DELETE
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.mass.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Collection $journals): void { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             if (\count($journals) > 0) { | 
					
						
							|  |  |  |                 $journalIds = $journals->pluck('id')->toArray(); | 
					
						
							|  |  |  |                 $what       = strtolower($journals->first()['type']); | 
					
						
							|  |  |  |                 $breadcrumbs->parent('transactions.index', $what); | 
					
						
							|  |  |  |                 $breadcrumbs->push(trans('firefly.mass_edit_journals'), route('transactions.mass.edit', $journalIds)); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |                 return; | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             $breadcrumbs->parent('index'); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.mass.delete', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Collection $journals) { | 
					
						
							| 
									
										
										
										
											2017-12-30 12:43:57 +01:00
										 |  |  |             $journalIds = $journals->pluck('id')->toArray(); | 
					
						
							|  |  |  |             $what       = strtolower($journals->first()->transactionType->type); | 
					
						
							| 
									
										
										
										
											2018-03-25 18:26:35 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.index', $what); | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->push(trans('firefly.mass_edit_journals'), route('transactions.mass.delete', $journalIds)); | 
					
						
							| 
									
										
										
										
											2017-12-30 12:43:57 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // BULK EDIT
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.bulk.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, Collection $journals): void { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             if ($journals->count() > 0) { | 
					
						
							|  |  |  |                 $journalIds = $journals->pluck('id')->toArray(); | 
					
						
							|  |  |  |                 $what       = strtolower($journals->first()->transactionType->type); | 
					
						
							|  |  |  |                 $breadcrumbs->parent('transactions.index', $what); | 
					
						
							|  |  |  |                 $breadcrumbs->push(trans('firefly.mass_bulk_journals'), route('transactions.bulk.edit', $journalIds)); | 
					
						
							| 
									
										
										
										
											2017-12-30 12:43:57 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |                 return; | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2017-12-30 12:43:57 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('index'); | 
					
						
							| 
									
										
										
										
											2017-12-30 12:43:57 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             return; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // SPLIT
 | 
					
						
							|  |  |  |     Breadcrumbs::register( | 
					
						
							|  |  |  |         'transactions.split.edit', | 
					
						
							| 
									
										
										
										
											2018-08-05 07:36:33 +02:00
										 |  |  |         function (BreadcrumbsGenerator $breadcrumbs, TransactionJournal $journal) { | 
					
						
							| 
									
										
										
										
											2018-04-29 20:01:03 +02:00
										 |  |  |             $breadcrumbs->parent('transactions.show', $journal); | 
					
						
							|  |  |  |             $breadcrumbs->push(trans('breadcrumbs.edit_journal', ['description' => $journal->description]), route('transactions.split.edit', [$journal->id])); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | } catch (DuplicateBreadcrumbException $e) { | 
					
						
							|  |  |  | } |