• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/classes/general/calendar_user_settings.php
  • Класс: CCalendarUserSettings
  • Вызов: CCalendarUserSettings::getTrackingGroups
static function getTrackingGroups($userId = false, $params = array())
{
	$res = array();
	$str = CUserOptions::GetOption("calendar", "superpose_tracking_groups", false, $userId);

	if ($str !== false && CheckSerializedData($str))
	{
		$ids = unserialize($str, ['allowed_classes' => false]);
		if (is_array($ids) && count($ids) > 0)
		{
			foreach($ids as $id)
			{
				if (intval($id) > 0)
				{
					$res[] = intval($id);
				}
			}
		}
	}

	if ($params && isset($params['groupList']))
	{
		$params['groupList'] = array_unique($params['groupList']);
		$diff = array_diff($params['groupList'], $res);
		if (count($diff) > 0)
		{
			$res = array_merge($res, $diff);
			self::setTrackingGroups($userId, $res);
		}
	}

	return $res;
}