getRouteKey() !== $user->getRouteKey() and UserStaticRules::atLeastRole($authUser, RoleEnum::conceptor); } /** * Determine whether the user can restore the model. * * @param \App\Models\User $authUser * @param \App\Models\User $user * @return boolean */ public function restore(User $authUser, User $user): bool { return $authUser->getRouteKey() !== $user->getRouteKey() and UserStaticRules::atLeastRole($authUser, RoleEnum::conceptor); } /** * Determine whether the user can permanently delete the model. * * @param \App\Models\User $authUser * @param \App\Models\User $user * @return boolean */ public function forceDelete(User $authUser, User $user): bool { return $authUser->getRouteKey() !== $user->getRouteKey() and UserStaticRules::atLeastRole($authUser, RoleEnum::conceptor); } /** * Determine whether the user can duplicate the model. * * @param \App\Models\User $authUser * @param \App\Models\User $user * @return boolean */ public function duplicate(User $authUser, User $user): bool { return $authUser->getRouteKey() !== $user->getRouteKey() and UserStaticRules::atLeastRole($authUser, RoleEnum::conceptor); } /** * Determine whether the user can publish/unpublish the model. * * @param \App\Models\User $authUser * @param \App\Models\User $user * @return boolean */ public function changePublished(User $authUser, User $user): bool { return $authUser->getRouteKey() !== $user->getRouteKey() and UserStaticRules::atLeastRole($authUser, RoleEnum::conceptor); } }