fix: restore Component.php and move icon functionality to Overview.php only
- Reverted Component.php to original state (was breaking all Livewire modals) - Icon properties and methods now only in Overview.php where they belong - Icon button only shows as clickable on Overview page - Other pages show the icon as display-only (not a button) - Icon modal only renders on Overview page - Fixed saveIcon method to accept icon and color arguments
This commit is contained in:
@@ -24,14 +24,6 @@ class Component extends BaseComponent
|
||||
*/
|
||||
public bool $fastPolling = false;
|
||||
|
||||
/**
|
||||
* Server icon customization properties
|
||||
*/
|
||||
public bool $showIconModal = false;
|
||||
public string $selectedIcon = '';
|
||||
public string $selectedIconColor = '';
|
||||
public string $iconSearchQuery = ''; // Legacy property for stale sessions
|
||||
|
||||
/**
|
||||
* Mount the component with the server.
|
||||
*/
|
||||
@@ -45,59 +37,6 @@ class Component extends BaseComponent
|
||||
$this->loadVmStatus();
|
||||
}
|
||||
|
||||
/**
|
||||
* Open the icon customization modal.
|
||||
*/
|
||||
public function openIconModal(): void
|
||||
{
|
||||
// Load current icon settings
|
||||
$this->selectedIcon = $this->server->user_set_icon ?? '';
|
||||
$this->selectedIconColor = $this->server->user_set_icon_color ?? '';
|
||||
$this->showIconModal = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Close the icon customization modal.
|
||||
*/
|
||||
public function closeIconModal(): void
|
||||
{
|
||||
$this->showIconModal = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Save the selected icon and color.
|
||||
*/
|
||||
public function saveIcon(string $icon, string $color): void
|
||||
{
|
||||
$this->server->update([
|
||||
'user_set_icon' => $icon ?: null,
|
||||
'user_set_icon_color' => $color ?: null,
|
||||
]);
|
||||
|
||||
$this->selectedIcon = $icon;
|
||||
$this->selectedIconColor = $color;
|
||||
$this->showIconModal = false;
|
||||
|
||||
$this->notify('Server icon updated successfully', 'success');
|
||||
}
|
||||
|
||||
/**
|
||||
* Reset the server icon to default.
|
||||
*/
|
||||
public function resetIcon(): void
|
||||
{
|
||||
$this->server->update([
|
||||
'user_set_icon' => null,
|
||||
'user_set_icon_color' => null,
|
||||
]);
|
||||
|
||||
$this->selectedIcon = '';
|
||||
$this->selectedIconColor = '';
|
||||
$this->showIconModal = false;
|
||||
|
||||
$this->notify('Server icon reset to default', 'success');
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform a VM lifecycle action (start/stop/etc).
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user