diff --git a/app/Console/Commands/ExecuteInstallation.php b/app/Console/Commands/ExecuteInstallation.php new file mode 100644 index 00000000..adb27350 --- /dev/null +++ b/app/Console/Commands/ExecuteInstallation.php @@ -0,0 +1,47 @@ +call('key:random'); + $this->call('salt:random'); + $this->call('migrate', ['--force' => true]); + + $siteUrl = url('/'); + if (ends_with($siteUrl, '/index.php')) { + $siteUrl = substr($siteUrl, 0, -10); + } + option(['site_url' => $siteUrl]); + + $admin = new User; + $admin->email = $this->argument('email'); + $admin->nickname = $this->argument('nickname'); + $admin->score = option('user_initial_score'); + $admin->avatar = 0; + $admin->password = app('cipher')->hash($this->argument('password'), config('secure.salt')); + $admin->ip = '127.0.0.1'; + $admin->permission = User::SUPER_ADMIN; + $admin->register_at = get_datetime_string(); + $admin->last_sign_at = get_datetime_string(time() - 86400); + $admin->verified = true; + $admin->save(); + + $this->info('Installation completed!'); + $this->info('We recommend to modify your "Site URL" option if incorrect.'); + } +} diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index b7b1b61c..7c32864f 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -18,6 +18,7 @@ class Kernel extends ConsoleKernel Commands\SaltRandomCommand::class, Commands\MigratePlayersTable::class, Commands\MigrateCloset::class, + Commands\ExecuteInstallation::class, ]; /**