• Модуль: intranet
  • Путь к файлу: ~/bitrix/modules/intranet/lib/invitation.php
  • Класс: BitrixIntranetInvitation
  • Вызов: Invitation::canDelete
static function canDelete(array $params = []): bool
{
	global $USER;

	$targetUserId = (isset($params['USER_ID']) && intval($params['USER_ID']) > 0 ? intval($params['USER_ID']) : 0);
	$currentUserId = (isset($params['CURRENT_USER_ID']) && intval($params['CURRENT_USER_ID']) > 0 ? intval($params['CURRENT_USER_ID']) : $USER->getId());

	if (
		$targetUserId == $currentUserId
		|| !Loader::includeModule('socialnetwork')
	)
	{
		return false;
	}

	$currentUserPerms = CSocNetUserPerms::initUserPerms(
		$currentUserId,
		$targetUserId,
		CSocNetUser::isCurrentUserModuleAdmin(SITE_ID, !(Loader::includeModule('bitrix24') && CBitrix24::isPortalAdmin($currentUserId)))
	);

	if (
		$currentUserPerms["Operations"]["modifyuser_main"]
		&& self::canListDelete([
			'CURRENT_USER_ID' => $currentUserId
		])
		&& Util::checkIntegratorActionRestriction([
			'userId' => $targetUserId
		])
	)
	{
		return true;
	}

	$res = InvitationTable::getList([
		'filter' => [
			'ORIGINATOR_ID' => $currentUserId,
			'USER_ID' => $targetUserId
		]
	]);
	if ($res->fetch())
	{
		return true;
	}


	return false;
}