lasthourcloud/app/Http/Livewire/Project/Shared/Danger.php

32 lines
864 B
PHP
Raw Normal View History

2023-05-18 11:26:35 +00:00
<?php
2023-08-07 20:14:21 +00:00
namespace App\Http\Livewire\Project\Shared;
2023-05-18 11:26:35 +00:00
use Livewire\Component;
2023-07-13 11:16:24 +00:00
use Visus\Cuid2\Cuid2;
2023-05-18 11:26:35 +00:00
class Danger extends Component
{
2023-08-07 20:14:21 +00:00
public $resource;
2023-05-22 10:47:15 +00:00
public array $parameters;
2023-07-13 11:16:24 +00:00
public string|null $modalId = null;
2023-05-22 10:47:15 +00:00
public function mount()
{
2023-07-13 11:16:24 +00:00
$this->modalId = new Cuid2(7);
$this->parameters = get_route_parameters();
2023-05-22 10:47:15 +00:00
}
2023-05-22 10:47:15 +00:00
public function delete()
{
2023-08-07 20:14:21 +00:00
$destination = $this->resource->destination->getMorphClass()::where('id', $this->resource->destination->id)->first();
2023-05-22 10:47:15 +00:00
2023-08-07 20:14:21 +00:00
instant_remote_process(["docker rm -f {$this->resource->uuid}"], $destination->server);
$this->resource->delete();
2023-05-22 10:47:15 +00:00
return redirect()->route('project.resources', [
'project_uuid' => $this->parameters['project_uuid'],
'environment_name' => $this->parameters['environment_name']
]);
}
2023-05-18 11:26:35 +00:00
}