diff --git a/app/Providers/BreadcrumbsServiceProvider.php b/app/Providers/BreadcrumbsServiceProvider.php index 7ad186cfadcb..52f9346b062f 100644 --- a/app/Providers/BreadcrumbsServiceProvider.php +++ b/app/Providers/BreadcrumbsServiceProvider.php @@ -67,6 +67,11 @@ public function boot() ->push(trans('general.create'), route('hardware.create')) ); + Breadcrumbs::for('clone/hardware', fn (Trail $trail) => + $trail->parent('hardware.index', route('hardware.index')) + ->push(trans('admin/hardware/general.clone'), route('hardware.create')) + ); + Breadcrumbs::for('hardware.show', fn (Trail $trail, Asset $asset) => $trail->parent('hardware.index', route('hardware.index')) ->push($asset->present()->fullName(), route('hardware.show', $asset)) @@ -378,6 +383,12 @@ public function boot() ->push(trans('general.create'), route('locations.create')) ); + Breadcrumbs::for('clone/location', fn (Trail $trail) => + $trail->parent('locations.index', route('locations.index')) + ->push(trans('admin/locations/table.clone'), route('locations.create')) + ); + + Breadcrumbs::for('locations.show', fn (Trail $trail, Location $location) => $trail->parent('locations.index', route('locations.index')) ->push($location->name, route('locations.show', $location)) @@ -539,6 +550,13 @@ public function boot() ->push(trans('general.create'), route('users.create')) ); + Breadcrumbs::for('users.clone.show', fn (Trail $trail) => + $trail->parent('users.index', route('users.index')) + ->push(trans('admin/users/general.clone'), route('users.create')) + ); + + + Breadcrumbs::for('users.show', fn (Trail $trail, User $user) => $trail->parent('users.index', route('users.index')) ->push($user->getFullNameAttribute() ?? 'Missing Username!', route('users.show', $user)) diff --git a/resources/lang/en-US/admin/locations/table.php b/resources/lang/en-US/admin/locations/table.php index ed3f96f6b4cf..53176d8a4e77 100644 --- a/resources/lang/en-US/admin/locations/table.php +++ b/resources/lang/en-US/admin/locations/table.php @@ -39,4 +39,5 @@ 'signed_by_finance_auditor' => 'Signed By (Finance Auditor):', 'signed_by_location_manager' => 'Signed By (Location Manager):', 'signed_by' => 'Signed Off By:', + 'clone' => 'Clone Location', ]; diff --git a/routes/web/models.php b/routes/web/models.php index 2325846ea691..8c003ba66227 100644 --- a/routes/web/models.php +++ b/routes/web/models.php @@ -4,6 +4,7 @@ use App\Http\Controllers\AssetModelsFilesController; use App\Http\Controllers\BulkAssetModelsController; use Illuminate\Support\Facades\Route; +use Tabuna\Breadcrumbs\Trail; // Asset Model Management @@ -28,7 +29,10 @@ AssetModelsController::class, 'getClone' ] - )->name('models.clone.create')->withTrashed(); + )->name('models.clone.create')->withTrashed() + ->breadcrumbs(fn (Trail $trail) => + $trail->parent('models.index') + ->push(trans('admin/models/table.clone'), route('models.index'))); Route::post( '{model}/clone',