• Модуль: rest
  • Путь к файлу: ~/bitrix/modules/rest/lib/app.php
  • Класс: BitrixRestAppTable
  • Вызов: AppTable::getMap
static function getMap()
{
	return array(
		'ID' => array(
			'data_type' => 'integer',
			'primary' => true,
			'autocomplete' => true,
		),
		'CLIENT_ID' => array(
			'data_type' => 'string',
			'required' => true,
			'validation' => array(__CLASS__, 'validateClientId'),
		),
		'CODE' => array(
			'data_type' => 'string',
			'required' => true,
			'validation' => array(__CLASS__, 'validateCode'),
		),
		'ACTIVE' => array(
			'data_type' => 'boolean',
			'values' => array(static::INACTIVE, static::ACTIVE),
		),
		'INSTALLED' => array(
			'data_type' => 'boolean',
			'values' => array(static::NOT_INSTALLED, static::INSTALLED),
		),
		'URL' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateUrl'),
		),
		'URL_DEMO' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateUrlDemo'),
		),
		'URL_INSTALL' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateUrlInstall'),
		),
		'VERSION' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateVersion'),
		),
		'SCOPE' => array(
			'data_type' => 'string',
			'required' => true,
			'validation' => array(__CLASS__, 'validateScope'),
		),
		'STATUS' => array(
			'data_type' => 'enum',
			'required' => true,
			'values' => array(
				static::STATUS_LOCAL,
				static::STATUS_FREE,
				static::STATUS_PAID,
				static::STATUS_DEMO,
				static::STATUS_TRIAL,
				static::STATUS_SUBSCRIPTION,
			),
		),
		'DATE_FINISH' => array(
			'data_type' => 'date',
		),
		'IS_TRIALED' => array(
			'data_type' => 'boolean',
			'values' => array(static::NOT_TRIALED, static::TRIALED),
		),
		'SHARED_KEY' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateSharedKey'),
		),
		'CLIENT_SECRET' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateClientSecret'),
		),
		'APP_NAME' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateAppName'),
		),
		'ACCESS' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateAccess'),
		),
		'APPLICATION_TOKEN' => array(
			'data_type' => 'string',
		),
		'MOBILE' => array(
			'data_type' => 'boolean',
			'values' => array(static::INACTIVE, static::ACTIVE),
		),
		'USER_INSTALL' => array(
			'data_type' => 'boolean',
			'values' => array(static::INACTIVE, static::ACTIVE),
		),
		'LANG' => array(
			'data_type' => 'BitrixRestAppLangTable',
			'reference' => array(
				'=this.ID' => 'ref.APP_ID',
				'=ref.LANGUAGE_ID' => new MainDBSqlExpression('?s', LANGUAGE_ID),
			),
		),
		'LANG_DEFAULT' => array(
			'data_type' => 'BitrixRestAppLangTable',
			'reference' => array(
				'=this.ID' => 'ref.APP_ID',
				'=ref.LANGUAGE_ID' => new MainDBSqlExpression('?s', Loc::getDefaultLang(LANGUAGE_ID)),
			),
		),
		'LANG_LICENSE' => array(
			'data_type' => 'BitrixRestAppLangTable',
			'reference' => array(
				'=this.ID' => 'ref.APP_ID',
				'=ref.LANGUAGE_ID' => new MainDBSqlExpression('?s', static::getLicenseLanguage()),
			),
		),
		(new OneToMany('LANG_ALL', AppLangTable::class, 'APP'))
			->configureJoinType('left')
	);
}