diff --git a/Modules/Helpdesk/Livewire/KanbanBoard.php b/Modules/Helpdesk/Livewire/KanbanBoard.php index a490cb9e..13dcf90f 100644 --- a/Modules/Helpdesk/Livewire/KanbanBoard.php +++ b/Modules/Helpdesk/Livewire/KanbanBoard.php @@ -25,6 +25,18 @@ final class KanbanBoard extends Component public function mount(): void { + $requestedBoardId = request()->query('board_id'); + + if (is_numeric($requestedBoardId)) { + $requestedBoardId = (int) $requestedBoardId; + + if (KanbanBoardModel::query()->whereKey($requestedBoardId)->exists()) { + $this->board_id = $requestedBoardId; + + return; + } + } + $this->board_id = KanbanBoardModel::query() ->where('is_default', true) ->orderBy('sort_order') @@ -139,6 +151,15 @@ final class KanbanBoard extends Component $this->refreshBoard(); } + /** + * Switch the visible board without relying on DOM morph side effects. + */ + public function selectBoard(int|string|null $value): void + { + $this->board_id = is_numeric($value) ? (int) $value : null; + $this->refreshBoard(); + } + /** * Render the Kanban board. */ diff --git a/Modules/Helpdesk/Resources/views/livewire/kanban-board.blade.php b/Modules/Helpdesk/Resources/views/livewire/kanban-board.blade.php index b81da65d..d99431eb 100644 --- a/Modules/Helpdesk/Resources/views/livewire/kanban-board.blade.php +++ b/Modules/Helpdesk/Resources/views/livewire/kanban-board.blade.php @@ -1,7 +1,7 @@ @vite(['resources/css/app.css'])
{{ $board?->description ?: 'Use settings to configure which statuses appear as draggable columns.' }}
@@ -57,9 +57,13 @@