From 43e6b14fe7c9076755ff2d95dd27d114d6c17b55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20B=C4=9Bhal?= Date: Mon, 16 Oct 2017 15:49:07 +0200 Subject: [PATCH] Generate password for first admin user --- .../fill_default_user_and_permissions.php | 3 ++- src/Console/Commands/CraftableInstall.php | 20 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/install-stubs/database/migrations/fill_default_user_and_permissions.php b/install-stubs/database/migrations/fill_default_user_and_permissions.php index fe74ce6..48efd7d 100644 --- a/install-stubs/database/migrations/fill_default_user_and_permissions.php +++ b/install-stubs/database/migrations/fill_default_user_and_permissions.php @@ -11,6 +11,7 @@ class FillDefaultUserAndPermissions extends Migration protected $users; protected $roles; protected $permissions; + protected $password = 'best package ever'; public function __construct() { @@ -61,7 +62,7 @@ public function __construct() 'first_name' => 'Administrator', 'last_name' => 'Administrator', 'email' => 'administrator@brackets.sk', - 'password' => Hash::make('best package ever'), + 'password' => Hash::make($this->password), 'remember_token' => NULL, 'created_at' => \Carbon\Carbon::now(), 'updated_at' => \Carbon\Carbon::now(), diff --git a/src/Console/Commands/CraftableInstall.php b/src/Console/Commands/CraftableInstall.php index 3b83d91..a693fc5 100644 --- a/src/Console/Commands/CraftableInstall.php +++ b/src/Console/Commands/CraftableInstall.php @@ -45,6 +45,8 @@ public function handle(Filesystem $files) $this->call('admin-listing:install'); + $this->generatePasswordAndUpdateMigration(); + $this->info('Craftable installed.'); } @@ -84,6 +86,24 @@ private function publishAllVendors() { ]); } + private function generatePasswordAndUpdateMigration() + { + $password = str_random(10); + + $files = File::allFiles(database_path('migrations')); + foreach ($files as $file) + { + if(strpos($file->getFilename(), 'fill_default_user_and_permissions.php') !== false) { + //change database/migrations/*fill_default_user_and_permissions.php to use new password + $this->strReplaceInFile(database_path('migrations/'.$file->getFilename()), + "best package ever", + "".$password.""); + $this->info('Admin password is: ' . $password); + break; + } + } + } + private function generateUserStuff(Filesystem $files) { // TODO this is probably redundant? // Migrate