EnvironmentManager = $environmentManager; } /** * * @param DatabaseEnvironmentRequest $request */ public function saveDatabaseEnvironment(DatabaseEnvironmentRequest $request) { $results = $this->EnvironmentManager->saveDatabaseVariables($request); if(array_key_exists("success", $results)) { Artisan::call('config:clear'); Artisan::call('key:generate --force'); Artisan::call('migrate --seed --force'); Artisan::call('migrate', ['--path' => 'vendor/laravel/passport/database/migrations', '--force' => true]); \Storage::disk('local')->put('database_created', 'database_created'); Setting::setSetting('profile_complete', 3); } return response()->json($results); } /** * * @param DatabaseEnvironmentRequest $request * @return JsonResponse */ public function saveMailEnvironment(MailEnvironmentRequest $request) { $setting = Setting::getSetting('profile_complete'); $results = $this->EnvironmentManager->saveMailVariables($request); if ($setting !== 'COMPLETED') { Setting::setSetting('profile_complete', 4); } return response()->json($results); } public function getMailEnvironment() { $MailData = [ 'mail_driver' => config('mail.driver'), 'mail_host' => config('mail.host'), 'mail_port' => config('mail.port'), 'mail_username' => config('mail.username'), 'mail_password' => config('mail.password'), 'mail_encryption' => config('mail.encryption'), 'from_name' => config('mail.from.name'), 'from_mail' => config('mail.from.address'), 'mail_mailgun_endpoint' => config('services.mailgun.endpoint'), 'mail_mailgun_domain' => config('services.mailgun.domain'), 'mail_mailgun_secret' => config('services.mailgun.secret'), 'mail_sparkpost_secret' => config('services.sparkpost.secret'), 'mail_ses_key' => config('services.ses.key'), 'mail_ses_secret' => config('services.ses.secret'), 'mail_mandrill_secret' => config('services.mandrill.secret'), ]; return response()->json($MailData); } /** * * @return JsonResponse */ public function getMailDrivers() { $drivers = [ 'smtp', 'mail', 'sendmail', 'mailgun', 'mandrill', 'ses', 'sparkpost' ]; return response()->json($drivers); } }