EnvironmentManager = $environmentManager; } /** * * @param DatabaseEnvironmentRequest $request */ public function saveDatabaseEnvironment(DatabaseEnvironmentRequest $request) { $results = $this->EnvironmentManager->saveDatabaseVariables($request); try { if(array_key_exists("success", $results)) { Artisan::call('config:clear'); Artisan::call('migrate --seed'); Artisan::call('migrate', ['--path' => 'vendor/laravel/passport/database/migrations']); \Storage::disk('local')->put('database_created', 'database_created'); Setting::setSetting('profile_complete', 3); } return response()->json($results); } catch (Exception $e) { return response()->json([ 'error' => 'migrate_failed' ]); } } /** * * @param DatabaseEnvironmentRequest $request * @return JsonResponse */ public function saveMailEnvironment(MailEnvironmentRequest $request) { $results = $this->EnvironmentManager->saveMailVariables($request); Setting::setSetting('profile_complete', 4); return response()->json($results); } /** * * @return JsonResponse */ public function getMailDrivers() { $drivers = [ 'smtp', 'mail', 'sendmail', 'mailgun', 'mandrill', 'ses', 'sparkpost' ]; return response()->json($drivers); } }