• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/entitymarker.php
  • Класс: BitrixSaleEntityMarker
  • Вызов: EntityMarker::addItem
static function addItem(OrderBase $order, $entityType, array $values)
{
	$orderCode = $order->getInternalId();

	if (!empty(static::$pool[$orderCode]) && !empty(static::$pool[$orderCode][$entityType]) && is_array(static::$pool[$orderCode][$entityType]))
	{
		foreach (static::$pool[$orderCode][$entityType] as $index => $fields)
		{
			$foundItem = false;

			foreach (static::getFieldsDuplicateCheck() as $checkField)
			{
				if (!empty($fields[$checkField]) && !empty($values[$checkField]) && $fields[$checkField] == $values[$checkField])
				{
					$foundItem = true;
					continue;
				}

				$foundItem = false;
				break;
			}

			if ($foundItem)
			{
				if (!empty($values['SUCCESS']))
				{
					static::$pool[$orderCode][$entityType][$index]['SUCCESS'] = $values['SUCCESS'];
					return true;
				}
			}
		}
	}

	static::$pool[$orderCode][$entityType][] = $values;
	return true;
}