• Модуль: rest
  • Путь к файлу: ~/bitrix/modules/rest/classes/general/restentity.php
  • Класс: CBitrixRestEntity
  • Вызов: CBitrixRestEntity::entityItemPropertyGet
static function entityItemPropertyGet($params, $n, $server)
{
	if(self::checkItemPropertyParams($params))
	{
		if(self::checkEntity($params['ENTITY'], $server))
		{
			if(isset($params['PROPERTY']) && $params['PROPERTY'] != '')
			{
				$arField = self::getItemProperty($params['PROPERTY'], $params['ENTITY'], $server);
				if(is_array($arField))
				{
					return array(
						'PROPERTY' => $arField['CODE'],
						'NAME' => $arField['NAME'],
						'TYPE' => $arField['PROPERTY_TYPE'],
						'SORT' => $arField['SORT'],
					);
				}
				else
				{
					throw new RestException('Property not found', self::ERROR_PROPERTY_NOT_FOUND);
				}
			}
			else
			{
				$result = array();
				$dbRes = self::getItemProperties($params['ENTITY'], $server);
				while ($arField = $dbRes->Fetch())
				{
					$result[] = array(
						'PROPERTY' => $arField['CODE'],
						'NAME' => $arField['NAME'],
						'TYPE' => $arField['PROPERTY_TYPE'],
						'SORT' => $arField['SORT'],
					);
				}
				return $result;
			}
		}
		else
		{
			throw new RestException('Entity not found', self::ERROR_ENTITY_NOT_FOUND);
		}
	}
}