• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/comp_pricetools.php
  • Класс: CIBlockPriceTools
  • Вызов: CIBlockPriceTools::CanBuy
static function CanBuy(
	/** @noinspection PhpUnusedParameterInspection */$IBLOCK_ID,
	$arCatalogPrices,
	$arItem
)
{
	if (isset($arItem['ACTIVE']) && $arItem['ACTIVE'] === 'N')
		return false;

	if (isset($arItem['CATALOG_AVAILABLE']) && $arItem['CATALOG_AVAILABLE'] === 'N')
		return false;
	if (isset($arItem['AVAILABLE']) && $arItem['AVAILABLE'] === 'N')
		return false;

	if (!empty($arItem["PRICE_MATRIX"]) && is_array($arItem["PRICE_MATRIX"]))
	{
		return $arItem["PRICE_MATRIX"]["AVAILABLE"] == "Y";
	}
	else
	{
		if (empty($arCatalogPrices) || !is_array($arCatalogPrices))
			return false;

		foreach ($arCatalogPrices as $arPrice)
		{
			//if ($arPrice["CAN_BUY"] && isset($arItem["CATALOG_PRICE_".$arPrice["ID"]]) && $arItem["CATALOG_PRICE_".$arPrice["ID"]] !== null)
			if ($arPrice["CAN_BUY"] && isset($arItem["CATALOG_PRICE_".$arPrice["ID"]]))
				return true;
		}
	}
	return false;
}