fix error display when server is installing, closes #424

This commit is contained in:
Dane Everitt 2017-05-05 16:27:36 -04:00
parent 4f127b95f0
commit a52d9eb0fb
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
8 changed files with 47 additions and 45 deletions

View file

@ -26,6 +26,7 @@
namespace Pterodactyl\Http\Controllers\Base;
use Illuminate\Http\Request;
use Pterodactyl\Models\Server;
use Pterodactyl\Http\Controllers\Controller;
class IndexController extends Controller
@ -71,4 +72,39 @@ class IndexController extends Controller
return $generated;
}
/**
* Returns status of the server in a JSON response used for populating active status list.
*
* @param \Illuminate\Http\Request $request
* @param string $uuid
* @return \Illuminate\Http\JsonResponse
*/
public function status(Request $request, $uuid)
{
$server = Server::byUuid($uuid);
if (! $server) {
return response()->json([], 404);
}
if (! $server->installed) {
return response()->json(['status' => 20]);
}
if ($server->suspended) {
return response()->json(['status' => 30]);
}
try {
$res = $server->guzzleClient()->request('GET', '/server');
if ($res->getStatusCode() === 200) {
return response()->json(json_decode($res->getBody()));
}
} catch (\Exception $e) {
//
}
return response()->json([]);
}
}

View file

@ -50,41 +50,6 @@ class AjaxController extends Controller
*/
protected $directory;
/**
* Returns true or false depending on the power status of the requested server.
*
* @param \Illuminate\Http\Request $request
* @param string $uuid
* @return \Illuminate\Http\JsonResponse
*/
public function getStatus(Request $request, $uuid)
{
$server = Models\Server::byUuid($uuid);
if (! $server) {
return response()->json([], 404);
}
if (! $server->installed) {
return response()->json(['status' => 20]);
}
if ($server->suspended) {
return response()->json(['status' => 30]);
}
try {
$res = $server->guzzleClient()->request('GET', '/server');
if ($res->getStatusCode() === 200) {
return response()->json(json_decode($res->getBody()));
}
} catch (RequestException $e) {
//
}
return response()->json([]);
}
/**
* Returns a listing of files in a given directory for a server.
*