public function postDownload(Request $request) { $download = Models\Download::where('token', $request->input('token', '00'))->first(); if (!$download) { return response()->json(['error' => 'An invalid request token was recieved with this request.'], 403); } $download->delete(); return response()->json(['path' => $download->path, 'server' => $download->server]); }
public function deleteServer($id, $force) { $server = Models\Server::findOrFail($id); $node = Models\Node::findOrFail($server->node); DB::beginTransaction(); try { // Delete Allocations Models\Allocation::where('assigned_to', $server->id)->update(['assigned_to' => null]); // Remove Variables Models\ServerVariables::where('server_id', $server->id)->delete(); // Remove SubUsers Models\Subuser::where('server_id', $server->id)->delete(); // Remove Permissions Models\Permission::where('server_id', $server->id)->delete(); // Remove Downloads Models\Download::where('server', $server->uuid)->delete(); $client = Models\Node::guzzleRequest($server->node); $client->request('DELETE', '/servers', ['headers' => ['X-Access-Token' => $node->daemonSecret, 'X-Access-Server' => $server->uuid]]); $server->delete(); DB::commit(); return true; } catch (\GuzzleHttp\Exception\TransferException $ex) { if ($force === 'force') { $server->delete(); DB::commit(); return true; } else { DB::rollBack(); throw new DisplayException('An error occured while attempting to delete the server on the daemon.', $ex); } } catch (\Exception $ex) { DB::rollBack(); throw $ex; } }