• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/iblockproptools.php
  • Класс: CIBlockPropertyTools
  • Вызов: CIBlockPropertyTools::validatePropertyDescription
static function validatePropertyDescription(array $propertyDescription): bool
{
	if (empty($propertyDescription) || !isset($propertyDescription['CODE']))
	{
		return false;
	}
	$checkResult = true;

	switch ($propertyDescription['CODE'])
	{
		case self::CODE_SKU_LINK:
			if (
				!isset($propertyDescription['LINK_IBLOCK_ID'])
				|| $propertyDescription['LINK_IBLOCK_ID'] <= 0
				|| $propertyDescription['LINK_IBLOCK_ID'] == $propertyDescription['IBLOCK_ID']
			)
			{
				$checkResult = false;
			}
			if ($checkResult)
			{
				$iblockIterator = IblockIblockTable::getList([
					'select' => ['ID'],
					'filter' => ['=ID' => $propertyDescription['LINK_IBLOCK_ID']]
				]);
				if (!($iblock = $iblockIterator->fetch()))
				{
					$checkResult = false;
				}
			}
			break;
		case self::CODE_MORE_PHOTO:
		case self::CODE_BLOG_POST:
		case self::CODE_BLOG_COMMENTS_COUNT:
		case self::CODE_BRAND_FOR_FACEBOOK:
			$checkResult = true;
			break;
		default:
			$checkResult = false;
			break;
	}
	return $checkResult;
}