• Модуль: lists
  • Путь к файлу: ~/bitrix/modules/lists/lib/field.php
  • Класс: BitrixListsField
  • Вызов: Field::prepareEditFieldByText
static function prepareEditFieldByText($field)
{
	if($field['READ'] == 'Y')
	{
		$result = array(
			'id' => $field['FIELD_ID'],
			'name' => $field['NAME'],
			'required' => $field['IS_REQUIRED'] == 'Y' ? true : false,
			'type' => 'custom',
			'value' => '
				',
			'show' => $field['SHOW']
		);
	}
	else
	{
		$result = array(
			'id' => $field['FIELD_ID'],
			'name' => $field['NAME'],
			'required' => $field['IS_REQUIRED'] == 'Y' ? true : false,
			'type' => 'textarea',
			'show' => $field['SHOW']
		);
		if($field['SETTINGS']['USE_EDITOR'] == 'Y')
		{
			$params = array('width' => '100%', 'height' => '200px');
			$match = array();
			if(preg_match('/s*(d+)s*(px|%|)/', $field['SETTINGS']['WIDTH'], $match) && ($match[1] > 0))
				$params['width'] = $match[1].$match[2];
			if(preg_match('/s*(d+)s*(px|%|)/', $field['SETTINGS']['HEIGHT'], $match) && ($match[1] > 0))
				$params['height'] = $match[1].$match[2];
			$result['type'] = 'custom';
			$result['params'] = $params;
			$result['value'] = self::renderHtmlEditor(
				$field['FIELD_ID'], $field['FIELD_ID'], $params, $field['VALUE']);
		}
		else
		{
			$params = array('style' => '');
			if(preg_match('/s*(d+)s*(px|%|)/', $field['SETTINGS']['WIDTH'], $match) && ($match[1] > 0))
				$params['style'] .= 'width:'.$match[1].'px;';
			if(preg_match('/s*(d+)s*(px|%|)/', $field['SETTINGS']['HEIGHT'], $match) && ($match[1] > 0))
				$params['style'] .= 'height:'.$match[1].'px;';
			$result['params'] = $params;
		}
	}

	return $result;
}