is_admin) { return true; } return $user->school_id == $entry->student->school_id; } /** * Determine whether the user can create models. */ public function create(User $user): bool { if ($user->is_admin) { return true; } return ! is_null($user->school_id); } /** * Determine whether the user can update the model. */ public function update(User $user, Entry $entry): bool { if ($user->is_admin) { return true; } return $user->school_id == $entry->student->school_id; } /** * Determine whether the user can delete the model. */ public function delete(User $user, Entry $entry): bool { if ($user->is_admin) { return true; } // Return false if $entry->audition->entry_deadline is in the past, continue if not if ($entry->audition->entry_deadline < now()) { return false; } return $user->school_id == $entry->student->school_id; } /** * Determine whether the user can restore the model. */ public function restore(User $user, Entry $entry): bool { return true; } /** * Determine whether the user can permanently delete the model. */ public function forceDelete(User $user, Entry $entry): bool { return true; } }