Charles 65bb99e2b0
Add server icons (#1906)
Co-authored-by: RMartinOscar <40749467+RMartinOscar@users.noreply.github.com>
2025-11-21 16:48:20 -05:00

37 lines
973 B
PHP

<?php
namespace App\Livewire;
use App\Filament\Server\Pages\Console;
use App\Models\Server;
use Filament\Support\Facades\FilamentView;
use Illuminate\View\View;
use Livewire\Component;
class ServerEntry extends Component
{
public Server $server;
public function render(): View
{
return view('livewire.server-entry', ['component' => $this]);
}
public function placeholder(): View
{
return view('livewire.server-entry-placeholder', ['server' => $this->server, 'component' => $this]);
}
public function redirectUrl(?bool $shouldOpenUrlInNewTab = false): string
{
$url = Console::getUrl(panel: 'server', tenant: $this->server);
$target = $shouldOpenUrlInNewTab ? '_blank' : '_self';
if (!$shouldOpenUrlInNewTab && FilamentView::hasSpaMode($url)) {
return sprintf("Livewire.navigate('%s')", $url);
}
return sprintf("window.open('%s', '%s')", $url, $target);
}
}