• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/lib/mailservices.php
  • Класс: BitrixMailMailServicesTable
  • Вызов: MailServicesTable::getMap
static function getMap()
{
	return array(
		'ID' => array(
			'data_type' => 'integer',
			'primary' => true,
			'autocomplete' => true,
		),
		'SITE_ID' => array(
			'data_type' => 'string',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_site_field'),
			'required'  => true
		),
		'ACTIVE' => array(
			'data_type' => 'boolean',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_active_field'),
			'values'    => array('N', 'Y'),
			'required'  => true
		),
		'SORT' => array(
			'data_type' => 'integer',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_sort_field')
		),
		'SERVICE_TYPE' => array(
			'data_type' => 'enum',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_type_field'),
			'values'    => array('imap', 'controller', 'domain', 'crdomain'),
			'required'  => true
		),
		'NAME' => array(
			'data_type' => 'string',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_name_field'),
			'required'  => true
		),
		'SERVER' => array(
			'data_type' => 'string',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_server_field'),
			'save_data_modification' => function()
			{
				return array(
					function ($value)
					{
						return mb_strtolower($value);
					}
				);
			},
			'fetch_data_modification' => function()
			{
				return array(
					function ($value)
					{
						return mb_strtolower($value);
					}
				);
			},
		),
		'PORT' => array(
			'data_type' => 'integer',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_port_field'),
		),
		'ENCRYPTION' => array(
			'data_type' => 'boolean',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_encryption_field'),
			'values'    => array('N', 'Y'),
		),
		'LINK' => array(
			'data_type' => 'string',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_link_field'),
		),
		'ICON' => array(
			'data_type' => 'integer',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_icon_field'),
		),
		'TOKEN' => array(
			'data_type' => 'string',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_token_field'),
		),
		'FLAGS' => array(
			'data_type' => 'integer',
			'title'     => LocalizationLoc::getMessage('mail_mailservice_entity_flags_field'),
		),
		'SITE' => array(
			'data_type' => 'BitrixMainSite',
			'reference' => array('=this.SITE_ID' => 'ref.LID'),
		),
		new EntityStringField('SMTP_SERVER'),
		new EntityIntegerField('SMTP_PORT'),
		new EntityBooleanField('SMTP_LOGIN_AS_IMAP', [
			'values' => array('N', 'Y'),
			'default_value' => 'N',
		]),
		new EntityBooleanField('SMTP_PASSWORD_AS_IMAP', [
			'values' => array('N', 'Y'),
			'default_value' => 'N',
		]),
		new ORMFieldsBooleanField(
			'SMTP_ENCRYPTION',
			array(
				'values' => array('N', 'Y'),
			)
		),
		new ORMFieldsBooleanField(
			'UPLOAD_OUTGOING',
			array(
				'values' => array('N', 'Y'),
			)
		),
	);
}