fixed #20
This commit is contained in:
parent
8bb636d7ad
commit
447f314eb5
@ -27,7 +27,7 @@ class Kernel extends ConsoleKernel
|
||||
protected function schedule(Schedule $schedule)
|
||||
{
|
||||
// Not installed yet
|
||||
if (env('DB_DATABASE', '') == '') {
|
||||
if (!env('APP_INSTALLED')) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -61,7 +61,7 @@ class Database extends Controller
|
||||
'database' => $request['database'],
|
||||
'username' => $request['username'],
|
||||
'password' => $request['password'],
|
||||
'driver' => 'mysql',
|
||||
'driver' => env('DB_CONNECTION', 'mysql'),
|
||||
'port' => env('DB_PORT', '3306'),
|
||||
]);
|
||||
|
||||
@ -105,18 +105,20 @@ class Database extends Controller
|
||||
],
|
||||
])->save();
|
||||
|
||||
$con = env('DB_CONNECTION', 'mysql');
|
||||
|
||||
// Change current connection
|
||||
$mysql = Config::get('database.connections.mysql');
|
||||
$db = Config::get('database.connections.' . $con);
|
||||
|
||||
$mysql['host'] = $request['hostname'];
|
||||
$mysql['database'] = $request['database'];
|
||||
$mysql['username'] = $request['username'];
|
||||
$mysql['password'] = $request['password'];
|
||||
$mysql['prefix'] = $prefix;
|
||||
$db['host'] = $request['hostname'];
|
||||
$db['database'] = $request['database'];
|
||||
$db['username'] = $request['username'];
|
||||
$db['password'] = $request['password'];
|
||||
$db['prefix'] = $prefix;
|
||||
|
||||
Config::set('database.connections.mysql', $mysql);
|
||||
Config::set('database.connections.' . $con, $db);
|
||||
|
||||
DB::purge('mysql');
|
||||
DB::reconnect('mysql');
|
||||
DB::purge($con);
|
||||
DB::reconnect($con);
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
namespace App\Http\Controllers\Install;
|
||||
|
||||
use DotenvEditor;
|
||||
use File;
|
||||
use Illuminate\Routing\Controller;
|
||||
|
||||
class Requirements extends Controller
|
||||
@ -19,7 +20,9 @@ class Requirements extends Controller
|
||||
|
||||
if (empty($requirements)) {
|
||||
// Create the .env file
|
||||
$this->createEnvFile();
|
||||
if (!File::exists(base_path('.env'))) {
|
||||
$this->createEnvFile();
|
||||
}
|
||||
|
||||
redirect('install/language')->send();
|
||||
} else {
|
||||
@ -80,6 +83,10 @@ class Requirements extends Controller
|
||||
$requirements[] = trans('install.requirements.extension', ['extension' => 'cURL']);
|
||||
}
|
||||
|
||||
if (!extension_loaded('xml')) {
|
||||
$requirements[] = trans('install.requirements.extension', ['extension' => 'XML']);
|
||||
}
|
||||
|
||||
if (!extension_loaded('zip')) {
|
||||
$requirements[] = trans('install.requirements.extension', ['extension' => 'ZIP']);
|
||||
}
|
||||
@ -120,13 +127,17 @@ class Requirements extends Controller
|
||||
'key' => 'APP_ENV',
|
||||
'value' => 'production',
|
||||
],
|
||||
[
|
||||
'key' => 'APP_INSTALLED',
|
||||
'value' => 'false',
|
||||
],
|
||||
[
|
||||
'key' => 'APP_KEY',
|
||||
'value' => 'base64:'.base64_encode(random_bytes(32)),
|
||||
],
|
||||
[
|
||||
'key' => 'APP_DEBUG',
|
||||
'value' => 'false',
|
||||
'value' => 'true',
|
||||
],
|
||||
[
|
||||
'key' => 'APP_LOG_LEVEL',
|
||||
|
@ -6,6 +6,7 @@ use Artisan;
|
||||
use App\Http\Requests\Install\Setting as Request;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Company\Company;
|
||||
use DotenvEditor;
|
||||
use File;
|
||||
use Illuminate\Routing\Controller;
|
||||
use Setting;
|
||||
@ -85,6 +86,18 @@ class Settings extends Controller
|
||||
//Artisan::call('config:cache');
|
||||
//Artisan::call('route:cache');
|
||||
|
||||
// Update .env file
|
||||
DotenvEditor::setKeys([
|
||||
[
|
||||
'key' => 'APP_INSTALLED',
|
||||
'value' => 'true',
|
||||
],
|
||||
[
|
||||
'key' => 'APP_DEBUG',
|
||||
'value' => 'false',
|
||||
],
|
||||
])->save();
|
||||
|
||||
// Rename the robots.txt file
|
||||
try {
|
||||
File::move(base_path('robots.txt.dist'), base_path('robots.txt'));
|
||||
|
@ -34,7 +34,7 @@ class Kernel extends HttpKernel
|
||||
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
|
||||
\App\Http\Middleware\VerifyCsrfToken::class,
|
||||
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
||||
\App\Http\Middleware\CheckIfInstalled::class,
|
||||
\App\Http\Middleware\RedirectIfNotInstalled::class,
|
||||
\App\Http\Middleware\LoadSettings::class,
|
||||
],
|
||||
|
||||
|
@ -3,8 +3,9 @@
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use File;
|
||||
|
||||
class CheckIfInstalled
|
||||
class RedirectIfNotInstalled
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
@ -15,8 +16,8 @@ class CheckIfInstalled
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
// DB_DATABASE not empty means installed
|
||||
if (env('DB_DATABASE', '') != '') {
|
||||
// Check if .env file exists
|
||||
if (File::exists(base_path('.env'))) {
|
||||
return $next($request);
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ class All
|
||||
public function compose(View $view)
|
||||
{
|
||||
// Make sure it's installed
|
||||
if (env('DB_DATABASE', '') != '') {
|
||||
if (env('APP_INSTALLED')) {
|
||||
// Share date format
|
||||
$view->with(['date_format' => $this->getCompanyDateFormat()]);
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ class AppServiceProvider extends ServiceProvider
|
||||
*/
|
||||
public function register()
|
||||
{
|
||||
if (env('APP_DEBUG')) {
|
||||
if (env('APP_INSTALLED') && env('APP_DEBUG')) {
|
||||
$this->app->register(\Barryvdh\Debugbar\ServiceProvider::class);
|
||||
}
|
||||
|
||||
|
@ -133,6 +133,7 @@ Route::group(['middleware' => ['guest', 'language']], function () {
|
||||
});
|
||||
|
||||
Route::group(['prefix' => 'install'], function () {
|
||||
Route::get('/', 'Install\Requirements@show');
|
||||
Route::get('requirements', 'Install\Requirements@show');
|
||||
|
||||
Route::get('language', 'Install\Language@create');
|
||||
|
Loading…
x
Reference in New Issue
Block a user