diff --git a/modules/Installer/Http/Controllers/InstallerController.php b/modules/Installer/Http/Controllers/InstallerController.php index 810dd320..93d08e53 100644 --- a/modules/Installer/Http/Controllers/InstallerController.php +++ b/modules/Installer/Http/Controllers/InstallerController.php @@ -33,13 +33,25 @@ class InstallerController extends AppBaseController */ public function index() { - if(config('app.key') !== 'base64:zdgcDqu9PM8uGWCtMxd74ZqdGJIrnw812oRMmwDF6KY=') { + /*if(config('app.key') !== 'base64:zdgcDqu9PM8uGWCtMxd74ZqdGJIrnw812oRMmwDF6KY=') { return view('installer::errors/already-installed'); - } + }*/ return view('installer::index-start'); } + protected function testDb(Request $request) + { + $this->dbService->checkDbConnection( + $request->input('db_conn'), + $request->input('db_host'), + $request->input('db_port'), + $request->input('db_name'), + $request->input('db_user'), + $request->input('db_pass') + ); + } + /** * Check the database connection */ @@ -49,14 +61,7 @@ class InstallerController extends AppBaseController $message = 'Database connection looks good!'; try { - $this->dbService->checkDbConnection( - $request->input('db_conn'), - $request->input('db_host'), - $request->input('db_port'), - $request->input('db_name'), - $request->input('db_user'), - $request->input('db_pass') - ); + $this->testDb($request); } catch (\Exception $e) { $status = 'danger'; $message = 'Failed! ' . $e->getMessage(); @@ -129,6 +134,16 @@ class InstallerController extends AppBaseController { Log::info('ENV setup', $request->toArray()); + // Before writing out the env file, test the DB credentials + try { + $this->testDb($request); + } catch (\Exception $e) { + flash()->error($e->getMessage()); + return redirect(route('installer.step2'))->withInput(); + } + + // Now write out the env file + try { $this->envService->createEnvFile( $request->input('db_conn'), @@ -140,7 +155,7 @@ class InstallerController extends AppBaseController ); } catch(FileException $e) { flash()->error($e->getMessage()); - return redirect(route('installer.step2')); + return redirect(route('installer.step2'))->withInput(); } # Needs to redirect so it can load the new .env @@ -157,7 +172,7 @@ class InstallerController extends AppBaseController $console_out = $this->dbService->setupDB($request->input('db_conn')); } catch(QueryException $e) { flash()->error($e->getMessage()); - return redirect(route('installer.step2')); + return redirect(route('installer.step2'))->withInput(); } return view('installer::steps/step2a-completed', [ diff --git a/modules/Installer/Resources/views/errors/already-installed.blade.php b/modules/Installer/Resources/views/errors/already-installed.blade.php index b2941f47..5977847d 100644 --- a/modules/Installer/Resources/views/errors/already-installed.blade.php +++ b/modules/Installer/Resources/views/errors/already-installed.blade.php @@ -7,6 +7,5 @@

{!! Form::submit('Go to your site >>', ['class' => 'btn btn-success']) !!}

- {!! PirepState::REJECTED !!} {!! Form::close() !!} @endsection