• Модуль: extranet
  • Путь к файлу: ~/bitrix/modules/extranet/classes/general/extranet.php
  • Класс: CExtranet
  • Вызов: CExtranet::OnSocNetUserToGroupUpdate
static function OnSocNetUserToGroupUpdate($ID, $arFields): bool
{
	if(!defined("BX_COMP_MANAGED_CACHE"))
	{
		return true;
	}

	if (
		array_key_exists("ROLE", $arFields)
		&& array_key_exists("GROUP_ID", $arFields)
		&& (int)$arFields["GROUP_ID"] > 0
		&& (int)$arFields["USER_ID"] > 0
	)
	{
		if (!Loader::includeModule('socialnetwork'))
		{
			return false;
		}

		$dbUsersInGroup = CSocNetUserToGroup::GetList(
			array(),
			array(
				"GROUP_ID" => $arFields["GROUP_ID"],
				"<=ROLE" => SONET_ROLES_USER,
			),
			false,
			false,
			array("ID", "USER_ID")
		);

		$userIdList = [
			(int)$arFields['USER_ID'],
		];

		if ($dbUsersInGroup)
		{
			while ($arUserInGroup = $dbUsersInGroup->fetch())
			{
				$userIdList[] = (int)$arUserInGroup['USER_ID'];
			}
		}

		static::clearCache($userIdList);
	}

	return true;
}