• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/component/baseform.php
  • Класс: BitrixCatalogComponentBaseForm
  • Вызов: BaseForm::getPropertyType
private function getPropertyType(Property $property): string
{
	switch ($property->getPropertyType())
	{
		case PropertyTable::TYPE_STRING:
			// ToDo no multiple textarea right now
			// if ($property->isMultiple())
			// {
			// 	$fieldType = 'multifield';
			// }
			if ((int)$property->getSetting('ROW_COUNT') > 1)
			{
				$fieldType = 'textarea';
			}
			else
			{
				$fieldType = $property->isMultiple() ? 'multitext' : 'text';
			}

			break;

		case PropertyTable::TYPE_NUMBER:
			// ToDo no multiple number right now
			$fieldType = $property->isMultiple() ? 'multinumber' : 'number';
			break;

		case PropertyTable::TYPE_LIST:
			$fieldType = $property->isMultiple() ? 'multilist' : 'list';
			break;

		// case TextField::class:
		// 	$fieldType = 'textarea';
		// 	break;

		case PropertyTable::TYPE_ELEMENT:
		case PropertyTable::TYPE_FILE:
			$fieldType = 'custom';
			break;

		default:
			$fieldType = 'text';
	}

	return $fieldType;
}