• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/cml2.php
  • Класс: CIBlockCMLImport
  • Вызов: CIBlockCMLImport::CheckManufacturer
function CheckManufacturer($xml)
{
	if (!$xml)
	{
		return "";
	}

	if (!isset($this->PROPERTY_MAP["CML2_MANUFACTURER"]))
	{
		return '';
	}

	$propertyId = $this->PROPERTY_MAP["CML2_MANUFACTURER"];
	$enumXmlId = $xml[$this->mess["IBLOCK_XML2_ID"]];
	$enumName = $xml[$this->mess["IBLOCK_XML2_NAME"]];
	if ($enumXmlId == '')
	{
		return "";
	}
	$enumValue = CIBlockPropertyEnum::GetList(array(), array(
		"PROPERTY_ID" => $propertyId,
		"XML_ID" => $enumXmlId,
	));
	$enum = $enumValue->Fetch();

	if ($enum)
	{
		if ($enum["VALUE"] !== $enumName)
		{
			CIBlockPropertyEnum::Update($enum["ID"], array(
				"VALUE" => $enumName,
			));
		}
		return $enum["ID"];
	}
	else
	{
		return CIBlockPropertyEnum::Add(array(
			"VALUE" => $enumName,
			"PROPERTY_ID" => $propertyId,
			"DEF" => "N",
			"XML_ID" => $enumXmlId,
		));
	}
}