• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/helpers/admin/blocks/orderbasket.php
  • Класс: BitrixSaleHelpersAdminBlocksOrderBasket
  • Вызов: OrderBasket::getProductsData
static function getProductsData(array $productsIds, $siteId, array $fields = array(), $userId = 0)
{
	if(empty($productsIds))
		return array();

	$result = array();

	foreach($productsIds as  $id)
	{
		$details = OrderEdit::getProductDetails($id, $userId, $siteId);

		if($details !== false)
			$result[$id] = $details;
	}

	$noCachedProductIds = array_diff($productsIds, array_keys($result));

	if(!empty($noCachedProductIds))
	{
		$noCachedData = BitrixSaleHelpersAdminProduct::getData($noCachedProductIds, $siteId, array_keys($fields));

		foreach($noCachedData as $productId => $productData)
		{
			$result[$productId] = $productData;
			OrderEdit::setProductDetails($productId, $userId, $siteId, $result[$productId]);
		}

		$emptyData = array_diff($productsIds, array_keys($result));

		foreach($emptyData as $productId)
			$result[$productId] = array();
	}

	return $result;
}