user->contains('id', $user->id) && $todo->projects->contains('id', $project->id); } /** * Determine whether the user can create models. */ public function create(User $user): bool { return true; } /** * Determine whether the user can update the model. */ public function update(User $user, Todo $todo): bool { $project = $todo->projects->first(); return $project->user->contains('id', $user->id) && $todo->projects->contains('id', $project->id); } /** * Determine whether the user can delete the model. */ public function delete(User $user, Todo $todo): bool { $project = $todo->projects->first(); return $project->user->contains('id', $user->id); } /** * Determine whether the user can restore the model. */ public function restore(User $user, Todo $todo): bool { $project = $todo->projects->first(); return $project->user->contains('id', $user->id); } /** * Determine whether the user can permanently delete the model. */ public function forceDelete(User $user, Todo $todo): bool { $project = $todo->projects->first(); return $project->user->contains('id', $user->id); } }