From 5301c986214b05c4a962715c83955b1dbe957ff2 Mon Sep 17 00:00:00 2001 From: Vasyka Date: Wed, 5 Aug 2026 19:52:23 +0000 Subject: [PATCH] fix(edit-wo): build dashboard URL eagerly, outside action closure The action ->url() closure was resolving \$this to the Action instance and its ->getRecord() returned null in header-action context, so the URL came out as /app/work-orders//dashboard. getHeaderActions() runs after mount(), so \$this->record is guaranteed populated. Compute the URL string once and pass it as a plain value. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../Resources/WorkOrderResource/Pages/EditWorkOrder.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/Filament/Tenant/Resources/WorkOrderResource/Pages/EditWorkOrder.php b/app/Filament/Tenant/Resources/WorkOrderResource/Pages/EditWorkOrder.php index 2b5a67b..126968f 100644 --- a/app/Filament/Tenant/Resources/WorkOrderResource/Pages/EditWorkOrder.php +++ b/app/Filament/Tenant/Resources/WorkOrderResource/Pages/EditWorkOrder.php @@ -31,12 +31,14 @@ class EditWorkOrder extends EditRecord protected function getHeaderActions(): array { + $dashboardUrl = url('/app/work-orders/' . $this->record->id . '/dashboard'); + return [ Actions\Action::make('dashboard') ->label(__('Vizualizare dashboard')) ->icon('heroicon-m-squares-2x2') ->color('info') - ->url(fn ($livewire) => url('/app/work-orders/' . ($livewire->record?->id ?? $livewire->getRecord()?->id) . '/dashboard')), + ->url($dashboardUrl), Actions\Action::make('apply_template') ->label(__('Aplică șablon')) ->icon('heroicon-m-clipboard-document-list')