/**
  * Deletes a database server from the system if it is empty.
  * @param  int $server The ID of the Database Server.
  * @return
  */
 public function delete($server)
 {
     $dbh = Models\DatabaseServer::findOrFail($server);
     $databases = Models\Database::where('db_server', $dbh->id)->count();
     if ($databases > 0) {
         throw new DisplayException('You cannot delete a database server that has active databases attached to it.');
     }
     return $dbh->delete();
 }
Beispiel #2
0
 public function postResetDatabasePassword(Request $request, $uuid)
 {
     $server = Models\Server::getByUUID($uuid);
     $database = Models\Database::where('id', $request->input('database'))->where('server_id', $server->id)->firstOrFail();
     $this->authorize('reset-db-password', $server);
     try {
         $repo = new Repositories\DatabaseRepository();
         $password = str_random(16);
         $repo->modifyPassword($request->input('database'), $password);
         return response($password);
     } catch (\Pterodactyl\Exceptions\DisplayException $ex) {
         return response()->json(['error' => $ex->getMessage()], 503);
     } catch (\Exception $ex) {
         Log::error($ex);
         return response()->json(['error' => 'An unhandled error occured while attempting to modify this database\'s password.'], 503);
     }
 }