teams()->get()->firstWhere('id', $applicationPreview->application->team()->first()->id) !== null; } /** * Determine whether the user can create models. */ public function create(User $user): bool { return $user->isAdmin(); } /** * Determine whether the user can update the model. */ public function update(User $user, ApplicationPreview $applicationPreview): Response { if ($user->isAdmin()) { return Response::allow(); } return Response::deny('As a member, you cannot update this preview.

You need at least admin or owner permissions.'); } /** * Determine whether the user can delete the model. */ public function delete(User $user, ApplicationPreview $applicationPreview): bool { return $user->isAdmin() && $user->teams()->get()->firstWhere('id', $applicationPreview->application->team()->first()->id) !== null; } /** * Determine whether the user can restore the model. */ public function restore(User $user, ApplicationPreview $applicationPreview): bool { return $user->isAdmin() && $user->teams()->get()->firstWhere('id', $applicationPreview->application->team()->first()->id) !== null; } /** * Determine whether the user can permanently delete the model. */ public function forceDelete(User $user, ApplicationPreview $applicationPreview): bool { return $user->isAdmin() && $user->teams()->get()->firstWhere('id', $applicationPreview->application->team()->first()->id) !== null; } /** * Determine whether the user can deploy the preview. */ public function deploy(User $user, ApplicationPreview $applicationPreview): bool { return $user->teams()->get()->firstWhere('id', $applicationPreview->application->team()->first()->id) !== null; } /** * Determine whether the user can manage preview deployments. */ public function manageDeployments(User $user, ApplicationPreview $applicationPreview): bool { return $user->isAdmin() && $user->teams()->get()->firstWhere('id', $applicationPreview->application->team()->first()->id) !== null; } }