isMember($user, $tenant)) { return Response::denyAsNotFound(); } return $resolver->can($user, $tenant, Capabilities::TENANT_VIEW) ? true : Response::deny(); } public function view(User $user, OnboardingSession $session): Response|bool { $tenant = Tenant::current(); if (! $tenant) { return false; } if ((int) $session->tenant_id !== (int) $tenant->getKey()) { return Response::denyAsNotFound(); } $resolver = app(CapabilityResolver::class); if (! $resolver->isMember($user, $tenant)) { return Response::denyAsNotFound(); } return $resolver->can($user, $tenant, Capabilities::TENANT_VIEW) ? true : Response::deny(); } public function create(User $user): Response|bool { $tenant = Tenant::current(); if (! $tenant) { return false; } $resolver = app(CapabilityResolver::class); if (! $resolver->isMember($user, $tenant)) { return Response::denyAsNotFound(); } return $resolver->can($user, $tenant, Capabilities::TENANT_MANAGE) ? true : Response::deny(); } public function update(User $user, OnboardingSession $session): Response|bool { $tenant = Tenant::current(); if (! $tenant) { return false; } if ((int) $session->tenant_id !== (int) $tenant->getKey()) { return Response::denyAsNotFound(); } $resolver = app(CapabilityResolver::class); if (! $resolver->isMember($user, $tenant)) { return Response::denyAsNotFound(); } return $resolver->can($user, $tenant, Capabilities::TENANT_MANAGE) ? true : Response::deny(); } }