• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/user.php
  • Класс: CAllUser
  • Вызов: CAllUser::AppendUserGroup
static function AppendUserGroup($user_id, $groups)
{
	$arGroups = [];
	$res = static::GetUserGroupList($user_id);
	while ($res_arr = $res->Fetch())
	{
		if ($res_arr["GROUP_ID"] != 2)
		{
			$arGroups[(int)$res_arr["GROUP_ID"]] = [
				"GROUP_ID" => $res_arr["GROUP_ID"],
				"DATE_ACTIVE_FROM" => $res_arr["DATE_ACTIVE_FROM"],
				"DATE_ACTIVE_TO" => $res_arr["DATE_ACTIVE_TO"],
			];
		}
	}

	if (!is_array($groups))
	{
		$groups = [$groups];
	}

	$setGroups = false;
	foreach ($groups as $group)
	{
		if (!is_array($group))
		{
			$group = ["GROUP_ID" => $group];
		}
		$groupId = (int)$group["GROUP_ID"];
		if ($groupId != 2)
		{
			if (!isset($arGroups[$groupId]))
			{
				$arGroups[$groupId] = $group;
				$setGroups = true;
			}
		}
	}

	if ($setGroups)
	{
		static::SetUserGroup($user_id, $arGroups);
	}
}