ProductLoader::getTitleFull

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. ProductLoader
  4. getTitleFull
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/documentgenerator/productloader.php
  • Класс: Bitrix\Crm\Integration\DocumentGenerator\ProductLoader
  • Вызов: ProductLoader::getTitleFull
public function getTitleFull(int $rowId): ?string
{
	$elementId = $this->getElementIdByRowId($rowId);
	if (!$elementId)
	{
		return null;
	}

	$name = $this->getIblockValue('NAME', $rowId);
	$isProduct = isset($this->productIds[$elementId]);
	if ($isProduct)
	{
		return $name;
	}

	if (empty($this->offerProperties))
	{
		return $name;
	}

	$offerPropertyValues = [];
	foreach ($this->offerProperties as $property)
	{
		$value = $this->getPreparedPropertyValue($property, $elementId);
		if (!empty($value))
		{
			$offerPropertyValues[] = Loc::getMessage('CRM_DOCUMENTGENERATOR_PRODUCTLOADER_OFFER_PROPERTY_PAIR', [
				'#NAME#' => $property['NAME'],
				'#VALUE#' => $value,
			]);
		}
	}

	if (!empty($offerPropertyValues))
	{
		$name = Loc::getMessage('CRM_DOCUMENTGENERATOR_PRODUCTLOADER_FULL_TITLE', [
			'#NAME#' => $name,
			'#PROPERTY_VALUES#' => implode(
				Loc::getMessage('CRM_DOCUMENTGENERATOR_PRODUCTLOADER_OFFER_PROPERTY_PAIR_DELIMITER'),
				$offerPropertyValues
			),
		]);
	}

	return $name;
}

Добавить комментарий