Fixed installer
This commit is contained in:
parent
82fff62d2e
commit
eb3d1b6123
|
|
@ -48,6 +48,7 @@ class InstallerController extends Controller
|
|||
public_path(config('attendize.event_pdf_tickets_path')),
|
||||
base_path('bootstrap/cache'),
|
||||
base_path('.env'),
|
||||
base_path(),
|
||||
];
|
||||
|
||||
/*
|
||||
|
|
@ -60,6 +61,15 @@ class InstallerController extends Controller
|
|||
'fileinfo',
|
||||
'tokenizer',
|
||||
'gd',
|
||||
'zip',
|
||||
];
|
||||
|
||||
/*
|
||||
* Optional PHP extensions
|
||||
*/
|
||||
$data['optional_requirements'] = [
|
||||
'pdo_pgsql',
|
||||
'pdo_mysql',
|
||||
];
|
||||
|
||||
return view('Installer.Installer', $data);
|
||||
|
|
@ -75,7 +85,7 @@ class InstallerController extends Controller
|
|||
{
|
||||
set_time_limit(300);
|
||||
|
||||
$database['type'] = 'mysql';
|
||||
$database['type'] = $request->get('database_type');
|
||||
$database['host'] = $request->get('database_host');
|
||||
$database['name'] = $request->get('database_name');
|
||||
$database['username'] = $request->get('database_username');
|
||||
|
|
@ -98,25 +108,25 @@ class InstallerController extends Controller
|
|||
$is_db_valid = self::testDatabase($database);
|
||||
|
||||
if ($is_db_valid === 'yes') {
|
||||
return reponse()->json([
|
||||
return [
|
||||
'status' => 'success',
|
||||
'message' => 'Success, Your connection works!',
|
||||
'test' => 1,
|
||||
]);
|
||||
];
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
return [
|
||||
'status' => 'error',
|
||||
'message' => 'Unable to connect! Please check your settings',
|
||||
'test' => 1,
|
||||
]);
|
||||
];
|
||||
}
|
||||
|
||||
$config = "APP_ENV=production\n".
|
||||
"APP_DEBUG=false\n".
|
||||
"APP_URL={$app_url}\n".
|
||||
"APP_KEY={$app_key}\n\n".
|
||||
"DB_TYPE=mysql\n".
|
||||
"APP_KEY={$app_key}\n".
|
||||
"DB_TYPE={$database['type']}\n".
|
||||
"DB_HOST={$database['host']}\n".
|
||||
"DB_DATABASE={$database['name']}\n".
|
||||
"DB_USERNAME={$database['username']}\n".
|
||||
|
|
@ -126,7 +136,7 @@ class InstallerController extends Controller
|
|||
"MAIL_ENCRYPTION={$mail['encryption']}\n".
|
||||
"MAIL_HOST={$mail['host']}\n".
|
||||
"MAIL_USERNAME={$mail['username']}\n".
|
||||
"MAIL_FROM_NAME={$mail['from_name']}\n".
|
||||
"MAIL_FROM_NAME=\"{$mail['from_name']}\"\n".
|
||||
"MAIL_FROM_ADDRESS={$mail['from_address']}\n".
|
||||
"MAIL_PASSWORD={$mail['password']}\n\n";
|
||||
|
||||
|
|
@ -135,13 +145,16 @@ class InstallerController extends Controller
|
|||
fclose($fp);
|
||||
|
||||
Config::set('database.default', $database['type']);
|
||||
Config::set('database.connections.mysql.host', $database['host']);
|
||||
Config::set('database.connections.mysql.database', $database['name']);
|
||||
Config::set('database.connections.mysql.username', $database['username']);
|
||||
Config::set('database.connections.mysql.password', $database['password']);
|
||||
Config::set("database.connections.{$database['type']}.host", $database['host']);
|
||||
Config::set("database.connections.{$database['type']}.database", $database['name']);
|
||||
Config::set("database.connections.{$database['type']}.username", $database['username']);
|
||||
Config::set("database.connections.{$database['type']}.password", $database['password']);
|
||||
|
||||
DB::reconnect();
|
||||
|
||||
//force laravel to regenerate a new key (see key:generate sources)
|
||||
Config::set('app.key', $app_key);
|
||||
Artisan::call('key:generate');
|
||||
Artisan::call('migrate', ['--force' => true]);
|
||||
if (Timezone::count() == 0) {
|
||||
Artisan::call('db:seed', ['--force' => true]);
|
||||
|
|
@ -158,10 +171,10 @@ class InstallerController extends Controller
|
|||
private function testDatabase($database)
|
||||
{
|
||||
Config::set('database.default', $database['type']);
|
||||
Config::set('database.connections.mysql.host', $database['host']);
|
||||
Config::set('database.connections.mysql.database', $database['name']);
|
||||
Config::set('database.connections.mysql.username', $database['username']);
|
||||
Config::set('database.connections.mysql.password', $database['password']);
|
||||
Config::set("database.connections.{$database['type']}.host", $database['host']);
|
||||
Config::set("database.connections.{$database['type']}.database", $database['name']);
|
||||
Config::set("database.connections.{$database['type']}.username", $database['username']);
|
||||
Config::set("database.connections.{$database['type']}.password", $database['password']);
|
||||
|
||||
try {
|
||||
DB::reconnect();
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ return [
|
|||
|
|
||||
*/
|
||||
|
||||
'log' => env('LOG', 'daily'),
|
||||
'log' => env('LOG', 'errorlog'),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@
|
|||
|
||||
@if(!extension_loaded($requirement))
|
||||
<div class="alert alert-danger">
|
||||
Warning: <b>{{$requirement}}</b> extension is not loaded
|
||||
Error: <b>{{$requirement}}</b> extension is not loaded
|
||||
</div>
|
||||
@else
|
||||
<div class="alert alert-success">
|
||||
|
|
@ -72,6 +72,22 @@
|
|||
|
||||
@endforeach
|
||||
|
||||
<h3>PHP Optional Requirements Check</h3>
|
||||
|
||||
@foreach($optional_requirements as $optional_requirement)
|
||||
|
||||
@if(!extension_loaded($optional_requirement))
|
||||
<div class="alert alert-warning">
|
||||
Warning: <b>{{$optional_requirement}}</b> extension is not loaded
|
||||
</div>
|
||||
@else
|
||||
<div class="alert alert-success">
|
||||
Success: <b>{{$optional_requirement}}</b> extension is loaded
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@endforeach
|
||||
|
||||
{!! Form::open(array('url' => route('postInstaller'), 'class' => 'installer_form')) !!}
|
||||
|
||||
<h3>App Settings</h3>
|
||||
|
|
@ -85,14 +101,19 @@
|
|||
)) !!}
|
||||
</div>
|
||||
|
||||
<h3>Database Settings</h3>
|
||||
|
||||
<div class="form-group">
|
||||
{!! Form::label('database_name', 'Database Name', array('class'=>'required control-label ')) !!}
|
||||
{!! Form::text('database_name', Input::old('database_name'),
|
||||
{!! Form::label('database_type', 'Database Type', array('class'=>'required control-label ')) !!}
|
||||
{!! Form::select('database_type', array(
|
||||
'pgsql' => "Postgres",
|
||||
'mysql' => "MySQL",
|
||||
), Input::old('database_type'),
|
||||
array(
|
||||
'class'=>'form-control'
|
||||
)) !!}
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
{!! Form::label('database_host', 'Database Host', array('class'=>'control-label required')) !!}
|
||||
{!! Form::text('database_host', Input::old('database_host'),
|
||||
|
|
@ -102,6 +123,14 @@
|
|||
)) !!}
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
{!! Form::label('database_name', 'Database Name', array('class'=>'required control-label ')) !!}
|
||||
{!! Form::text('database_name', Input::old('database_name'),
|
||||
array(
|
||||
'class'=>'form-control'
|
||||
)) !!}
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
{!! Form::label('database_username', 'Database Username', array('class'=>'control-label required')) !!}
|
||||
{!! Form::text('database_username', Input::old('database_username'),
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
@yield('head')
|
||||
|
||||
<!--JS-->
|
||||
{!! HTML::script('vendor/jquery/jquery.js') !!}
|
||||
{!! HTML::script('vendor/jquery/dist/jquery.min.js') !!}
|
||||
<!--/JS-->
|
||||
|
||||
<!--Style-->
|
||||
|
|
@ -78,4 +78,4 @@
|
|||
{!!HTML::script('assets/javascript/backend.js')!!}
|
||||
</body>
|
||||
@include('Shared.Partials.GlobalFooterJS')
|
||||
</html>
|
||||
</html>
|
||||
|
|
|
|||
Loading…
Reference in New Issue