• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/authproviders.php
  • Класс: CGroupAuthProvider
  • Вызов: CGroupAuthProvider::OnAfterSetUserGroup
static function OnAfterSetUserGroup($USER_ID, $groups)
{
	$dates = [];
	foreach ($groups as $group)
	{
		if ($group['DATE_ACTIVE_FROM'] == '' && $group['DATE_ACTIVE_TO'] == '')
		{
			if (!isset($dates['']))
			{
				$dates[''] = new DateTime();
			}
		}
		else
		{
			if ($group['DATE_ACTIVE_FROM'] != '')
			{
				if (!isset($dates['DATE_ACTIVE_FROM']))
				{
					$dates[$group['DATE_ACTIVE_FROM']] = DateTime::createFromUserTime($group['DATE_ACTIVE_FROM']);
				}
			}
			if ($group['DATE_ACTIVE_TO'] != '')
			{
				if (!isset($dates['DATE_ACTIVE_TO']))
				{
					$dates[$group['DATE_ACTIVE_TO']] = DateTime::createFromUserTime($group['DATE_ACTIVE_TO']);
				}
			}
		}
	}

	foreach ($dates as $date)
	{
		CAccess::RecalculateForUser($USER_ID, self::ID, $date);
	}
}