From 06a0b4f844a0e95be7cde2bc43b71f257ed450c1 Mon Sep 17 00:00:00 2001 From: Jani Cerar <29040621+janicerar@users.noreply.github.com> Date: Tue, 6 Nov 2018 07:47:23 +0100 Subject: [PATCH] [Feature] Added support for custom middleware --- config/nova-impersonate.php | 18 ++++++++++++++---- routes/api.php | 2 +- src/ToolServiceProvider.php | 2 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/config/nova-impersonate.php b/config/nova-impersonate.php index 8da8548..6d28a37 100644 --- a/config/nova-impersonate.php +++ b/config/nova-impersonate.php @@ -1,8 +1,18 @@ true, - 'redirect_back' => true, // false (nova path), true or - 'redirect_to' => '/', - 'key_down' => 'i', + 'enable_middleware' => true, + 'redirect_back' => true, // false (nova path), true or + 'redirect_to' => '/', + 'key_down' => 'i', + 'middleware' => [ + /** + * Middleware used for nova-impersonate routes + */ + 'base' => 'web', + /** + * Extra middleware used for leave route + */ + 'leave' => 'auth', + ], ]; \ No newline at end of file diff --git a/routes/api.php b/routes/api.php index 160f5e0..9e6973e 100644 --- a/routes/api.php +++ b/routes/api.php @@ -16,4 +16,4 @@ Route::get('users/{id}', ImpersonateController::class . '@take')->middleware(['nova']); -Route::get('leave', ImpersonateController::class . '@leave')->middleware(['auth']); +Route::get('leave', ImpersonateController::class . '@leave')->middleware([config('nova-impersonate.middleware.leave')]); diff --git a/src/ToolServiceProvider.php b/src/ToolServiceProvider.php index 0781aa0..a03813c 100644 --- a/src/ToolServiceProvider.php +++ b/src/ToolServiceProvider.php @@ -51,7 +51,7 @@ protected function routes() return; } - Route::middleware(['web']) + Route::middleware([config('nova-impersonate.middleware.base')]) ->prefix('nova-impersonate') ->group(__DIR__ . '/../routes/api.php');