From 13e51464f688712e0c770d2028c0150cb8087aec Mon Sep 17 00:00:00 2001 From: printempw Date: Wed, 18 Jan 2017 22:42:50 +0800 Subject: [PATCH] separate checking installation as a middleware --- app/Http/Controllers/SetupController.php | 17 ++--------------- app/Http/Kernel.php | 3 ++- app/Http/Middleware/CheckInstallation.php | 17 +++++++++++++++++ app/Http/Routes/setup.php | 8 +++++--- 4 files changed, 26 insertions(+), 19 deletions(-) create mode 100644 app/Http/Middleware/CheckInstallation.php diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index d9ed7662..ea1bc175 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -18,31 +18,18 @@ class SetupController extends Controller { public function welcome() { - // already installed - if (self::checkTablesExist()) { - return view('setup.locked'); - } else { - $config = config('database.connections.mysql'); + $config = config('database.connections.mysql'); - return view('setup.wizard.welcome')->with('server', "{$config['username']}@{$config['host']}"); - } + return view('setup.wizard.welcome')->with('server', "{$config['username']}@{$config['host']}"); } public function info() { - if (self::checkTablesExist()) { - return view('setup.locked'); - } - return view('setup.wizard.info'); } public function finish(Request $request) { - if (self::checkTablesExist()) { - return view('setup.locked'); - } - $this->validate($request, [ 'email' => 'required|email', 'password' => 'required|min:6|max:16|confirmed', diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 3bfa2bdb..9abf27c1 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -47,6 +47,7 @@ class Kernel extends HttpKernel 'auth' => \App\Http\Middleware\CheckAuthenticated::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'admin' => \App\Http\Middleware\CheckAdministrator::class, - 'player' => \App\Http\Middleware\CheckPlayerExist::class + 'player' => \App\Http\Middleware\CheckPlayerExist::class, + 'setup' => \App\Http\Middleware\CheckInstallation::class, ]; } diff --git a/app/Http/Middleware/CheckInstallation.php b/app/Http/Middleware/CheckInstallation.php new file mode 100644 index 00000000..3469c972 --- /dev/null +++ b/app/Http/Middleware/CheckInstallation.php @@ -0,0 +1,17 @@ +view('setup.locked'); + } + + return $next($request); + } +} diff --git a/app/Http/Routes/setup.php b/app/Http/Routes/setup.php index 56bf7be9..6dc365bf 100644 --- a/app/Http/Routes/setup.php +++ b/app/Http/Routes/setup.php @@ -16,9 +16,11 @@ */ Route::group(['prefix' => 'setup'], function () { - Route::get ('/', 'SetupController@welcome'); - Route::get ('/info', 'SetupController@info'); - Route::post('/finish', 'SetupController@finish'); + Route::group(['middleware' => 'setup'], function () { + Route::get ('/', 'SetupController@welcome'); + Route::get ('/info', 'SetupController@info'); + Route::post('/finish', 'SetupController@finish'); + }); Route::get ('/update', 'SetupController@update'); Route::post('/update', 'SetupController@doUpdate');