diff --git a/app/Http/Livewire/Destination/Form.php b/app/Http/Livewire/Destination/Form.php
index 437df49c6..bb88fa8cd 100644
--- a/app/Http/Livewire/Destination/Form.php
+++ b/app/Http/Livewire/Destination/Form.php
@@ -8,23 +8,13 @@ use Livewire\Component;
class Form extends Component
{
- public $destination_uuid;
- public $destination;
+ public mixed $destination;
protected $rules = [
'destination.name' => 'required',
'destination.network' => 'required',
'destination.server.ip' => 'required',
];
- public function mount()
- {
- $standalone = StandaloneDocker::where('uuid', $this->destination_uuid)->first();
- $swarm = SwarmDocker::where('uuid', $this->destination_uuid)->first();
- if (!$standalone && !$swarm) {
- abort(404);
- }
- $this->destination = $standalone ? $standalone->load(['server']) : $swarm->load(['server']);
- }
public function submit()
{
$this->validate();
diff --git a/app/Http/Livewire/Destination/New/StandaloneDocker.php b/app/Http/Livewire/Destination/New/StandaloneDocker.php
index bb555bf4b..6890c695f 100644
--- a/app/Http/Livewire/Destination/New/StandaloneDocker.php
+++ b/app/Http/Livewire/Destination/New/StandaloneDocker.php
@@ -4,6 +4,7 @@ namespace App\Http\Livewire\Destination\New;
use App\Models\Server;
use App\Models\StandaloneDocker as ModelsStandaloneDocker;
+use Illuminate\Database\Eloquent\Collection;
use Livewire\Component;
use Visus\Cuid2\Cuid2;
@@ -12,7 +13,7 @@ class StandaloneDocker extends Component
public string $name;
public string $network;
- public $servers;
+ public Collection $servers;
public int $server_id;
protected $rules = [
@@ -22,7 +23,9 @@ class StandaloneDocker extends Component
];
public function mount()
{
- $this->servers = Server::where('team_id', session('currentTeam')->id)->get();
+ if (request()->query('server_id')) {
+ $this->server_id = request()->query('server_id');
+ }
$this->network = new Cuid2(7);
$this->name = generateRandomName();
}
diff --git a/resources/views/destination/new.blade.php b/resources/views/destination/new.blade.php
index 55bb270e2..7e0a735a7 100644
--- a/resources/views/destination/new.blade.php
+++ b/resources/views/destination/new.blade.php
@@ -1,4 +1,4 @@
New Destination
-
+
diff --git a/resources/views/destination/show.blade.php b/resources/views/destination/show.blade.php
index 34bea294e..7430b8e8b 100644
--- a/resources/views/destination/show.blade.php
+++ b/resources/views/destination/show.blade.php
@@ -1,4 +1,4 @@
Destination
-
+
diff --git a/routes/web.php b/routes/web.php
index a22dc59b2..d36823c05 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -8,6 +8,7 @@ use App\Models\PrivateKey;
use App\Models\StandaloneDocker;
use App\Models\SwarmDocker;
use App\Http\Controllers\ServerController;
+use App\Models\Server;
use Illuminate\Support\Facades\Route;
/*
@@ -92,13 +93,9 @@ Route::middleware(['auth'])->group(function () {
Route::middleware(['auth'])->group(function () {
Route::get('/destination/new', function () {
- $query_params = request()->query();
- $server_id = 1;
- if (isset($query_params['server_id'])) {
- $server_id = $query_params['server_id'];
- }
+ $servers = Server::where('team_id', session('currentTeam')->id)->get();
return view('destination.new', [
- 'server_id' => $server_id,
+ "servers" => $servers,
]);
})->name('destination.new');
Route::get('/destination/{destination_uuid}', function () {
@@ -109,7 +106,7 @@ Route::middleware(['auth'])->group(function () {
}
$destination = $standalone_dockers ? $standalone_dockers : $swarm_dockers;
return view('destination.show', [
- 'destination_uuid' => $destination->uuid,
+ 'destination' => $destination->load(['server']),
]);
})->name('destination.show');
});