• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/model/chat.php
  • Класс: BitrixImModelChatTable
  • Вызов: ChatTable::getMap
static function getMap()
{
	return array(
		'ID' => array(
			'data_type' => 'integer',
			'primary' => true,
			'autocomplete' => true,
			'title' => Loc::getMessage('CHAT_ENTITY_ID_FIELD'),
		),
		'PARENT_ID' => array(
			'data_type' => 'integer',
			'default_value' => 0,
		),
		'PARENT_MID' => array(
			'data_type' => 'integer',
			'default_value' => 0,
		),
		'TITLE' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateTitle'),
			'title' => Loc::getMessage('CHAT_ENTITY_TITLE_FIELD'),
			'save_data_modification' => array('BitrixMainTextEmoji', 'getSaveModificator'),
			'fetch_data_modification' => array('BitrixMainTextEmoji', 'getFetchModificator'),
		),
		'DESCRIPTION' => array(
			'data_type' => 'text',
			'title' => Loc::getMessage('CHAT_ENTITY_DESCRIPTION_FIELD'),
			'save_data_modification' => array('BitrixMainTextEmoji', 'getSaveModificator'),
			'fetch_data_modification' => array('BitrixMainTextEmoji', 'getFetchModificator'),
		),
		'COLOR' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateColor'),
			'title' => Loc::getMessage('CHAT_ENTITY_COLOR_FIELD'),
		),
		'TYPE' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateType'),
			'title' => Loc::getMessage('CHAT_ENTITY_TYPE_FIELD'),
			'default_value' => 'C',
		),
		'EXTRANET' => array(
			'data_type' => 'boolean',
			'values' => array('N', 'Y'),
			'title' => Loc::getMessage('CHAT_ENTITY_EXTRANET_FIELD'),
			'default_value' => 'N',
		),
		'AUTHOR_ID' => array(
			'data_type' => 'integer',
			'required' => true,
			'title' => Loc::getMessage('CHAT_ENTITY_AUTHOR_ID_FIELD'),
		),
		'AVATAR' => array(
			'data_type' => 'integer'
		),
		'CALL_TYPE' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('CHAT_ENTITY_CALL_TYPE_FIELD'),
		),
		'CALL_NUMBER' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateCallNumber'),
			'title' => Loc::getMessage('CHAT_ENTITY_CALL_NUMBER_FIELD'),
		),
		'ENTITY_TYPE' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateEntityType'),
			'title' => Loc::getMessage('CHAT_ENTITY_ENTITY_TYPE_FIELD'),
		),
		'ENTITY_ID' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateEntityId'),
			'title' => Loc::getMessage('CHAT_ENTITY_ENTITY_ID_FIELD'),
		),
		'ENTITY_DATA_1' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateEntityData'),
			'title' => Loc::getMessage('CHAT_ENTITY_ENTITY_DATA_1_FIELD'),
		),
		'ENTITY_DATA_2' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateEntityData'),
			'title' => Loc::getMessage('CHAT_ENTITY_ENTITY_DATA_2_FIELD'),
		),
		'ENTITY_DATA_3' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateEntityData'),
			'title' => Loc::getMessage('CHAT_ENTITY_ENTITY_DATA_3_FIELD'),
		),
		'AUTHOR' => array(
			'data_type' => 'BitrixMainUser',
			'reference' => array('=this.AUTHOR_ID' => 'ref.ID'),
		),
		'DISK_FOLDER_ID' => array(
			'data_type' => 'integer'
		),
		'PIN_MESSAGE_ID' => array(
			'data_type' => 'integer',
			'default_value' => 0
		),
		'MESSAGE_COUNT' => array(
			'data_type' => 'integer',
			'default_value' => 0,
		),
		'USER_COUNT' => array(
			'data_type' => 'integer',
			'default_value' => 0,
		),
		'PREV_MESSAGE_ID' => array(
			'data_type' => 'integer',
			'default_value' => 0
		),
		'LAST_MESSAGE_ID' => array(
			'data_type' => 'integer',
			'default_value' => 0
		),
		'LAST_MESSAGE_STATUS' => array(
			'data_type' => 'string',
			'default_value' => IM_MESSAGE_STATUS_RECEIVED,
			'validation' => array(__CLASS__, 'validateMessageStatus'),
		),
		'DATE_CREATE' => array(
			'data_type' => 'datetime',
			'required' => false,
			'default_value' => array(__CLASS__, 'getCurrentDate'),
		),
		'MANAGE_USERS' => array(
			'data_type' => 'string',
			'default_value' => Chat::MANAGE_RIGHTS_MEMBER,
		),
		'MANAGE_UI' => array(
			'data_type' => 'string',
			'default_value' => Chat::MANAGE_RIGHTS_MEMBER,
		),
		'MANAGE_SETTINGS' => array(
			'data_type' => 'string',
			'default_value' => Chat::MANAGE_RIGHTS_OWNER,
		),
		'CAN_POST' => array(
			'data_type' => 'string',
			'default_value' => Chat::MANAGE_RIGHTS_MEMBER,
		),
		'INDEX' => array(
			'data_type' => 'BitrixImModelChatIndex',
			'reference' => array('=this.ID' => 'ref.CHAT_ID'),
			'join_type' => 'INNER',
		),
		'ALIAS' => array(
			'data_type' => 'BitrixImModelAliasTable',
			'reference' => array('=this.ID' => 'ref.ENTITY_ID', '=this.ENTITY_TYPE' => 'ref.ENTITY_TYPE'),
			'join_type' => 'LEFT',
		),
		'DISAPPEARING_TIME' => array(
			'data_type' => 'integer'
		),
	);
}