hasAnyRole(['super-admin', 'admin', 'amministratore', 'collaboratore'])) { abort(403); } $this->stabile = Stabile::query()->with(['rubrica', 'amministratore'])->findOrFail((int) $record); if (! $user->hasAnyRole(['super-admin', 'admin'])) { $activeStabile = StabileContext::getActiveStabile($user); $adminId = (int) ($activeStabile?->amministratore_id ?: 0); if ($adminId <= 0 || (int) $this->stabile->amministratore_id !== $adminId) { abort(404); } } // Imposta questo stabile come attivo per garantire che le pagine "Stabile" puntino ai dati giusti. StabileContext::setActiveStabileId($user, (int) $this->stabile->id); } protected function getBackUrl(): string { $back = request()->query('back'); if (is_string($back) && trim($back) !== '') { return $back; } return StabiliArchivio::getUrl(panel: 'admin-filament'); } protected function getHeaderActions(): array { return []; } }