• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/basketpropertiesitembase.php
  • Класс: BitrixSaleBasketPropertyItemBase
  • Вызов: BasketPropertyItemBase::verify
public function verify()
{
	$result = new Result();

	$map = static::getFieldsMap();

	$fieldValues = $fields = $this->fields->getValues();

	$propertyName = (!empty($fieldValues['NAME'])) ? $fieldValues['NAME'] : "";
	if ($this->getId() > 0)
	{
		$fields = $this->fields->getChangedValues();
	}

	foreach ($map as $key => $value)
	{
		if ($value instanceof MainEntityStringField)
		{
			$fieldName = $value->getName();
			if (!empty($fields[$fieldName]) && mb_strlen($fields[$fieldName]) > $value->getSize())
			{
				if ($fieldName === 'NAME')
				{
					$propertyName = mb_substr($propertyName, 0, 50)."...";
				}

				$result->addError(
					new ResultWarning(
						Loc::getMessage(
							"SALE_BASKET_ITEM_PROPERTY_MAX_LENGTH_ERROR",
							array(
								"#PROPERTY_NAME#" => $propertyName,
								"#FIELD_TITLE#" => $fieldName,
								"#MAX_LENGTH#" => $value->getSize()
							)
						),
						'SALE_BASKET_ITEM_PROPERTY_MAX_LENGTH_ERROR'
					)
				);
			}
		}
	}

	return $result;
}