• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/fuser.php
  • Класс: BitrixSaleFuser
  • Вызов: Fuser::getId
static function getId($skipCreate = false): ?int
{
	$id = static::getIdFromSession();
	if ($id !== null)
	{
		return $id;
	}

	$filter = static::getFilterFromCookie(static::getIdFromCookie());
	if ($filter !== null)
	{
		$id = static::getIdByFilter($filter);
	}
	if ($id === null)
	{
		$id = static::getIdByCurrentUser();
	}
	if ($id !== null)
	{
		$internalResult = static::update($id);
		if (!$internalResult->isSuccess())
		{
			$id = null;
		}
		unset($internalResult);
	}

	if ($id === null && !$skipCreate)
	{
		$internalResult = static::add();
		if ($internalResult->isSuccess())
		{
			$id = $internalResult->getId();
		}
		unset($internalResult);
	}

	return $id;
}