static function getMap()
{
return array(
'ID' => array(
'primary' => true,
'autocomplete' => true,
'data_type' => 'integer',
'format' => '/^[0-9]{1,11}$/',
),
'PERSON_TYPE_ID' => array(
'required' => true,
'data_type' => 'integer',
'format' => '/^[0-9]{1,11}$/',
),
'NAME' => array(
'required' => true,
'data_type' => 'string',
'validation' => array(__CLASS__, 'getNameValidators'),
'title' => Loc::getMessage('ORDER_PROPS_ENTITY_NAME_FIELD'),
),
'TYPE' => array(
'required' => true,
'data_type' => 'string',
'validation' => array(__CLASS__, 'getTypeValidators'),
),
'REQUIRED' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
'save_data_modification' => array(__CLASS__, 'getRequiredSaveModifiers'),
),
'DEFAULT_VALUE' => array(
'data_type' => 'string',
'validation' => array(__CLASS__, 'getValueValidators'),
'save_data_modification' => array(__CLASS__, 'getValueSaveModifiers'),
'fetch_data_modification' => array(__CLASS__, 'getValueFetchModifiers'),
'title' => Loc::getMessage('ORDER_PROPS_ENTITY_DEFAULT_VALUE_FIELD'),
),
'SORT' => array(
'data_type' => 'integer',
'format' => '/^[0-9]{1,11}$/',
'title' => Loc::getMessage('ORDER_PROPS_ENTITY_SORT_FIELD'),
),
'USER_PROPS' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_LOCATION' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'PROPS_GROUP_ID' => array(
'required' => true,
'data_type' => 'integer',
'format' => '/^[0-9]{1,11}$/',
),
'DESCRIPTION' => array(
'data_type' => 'string',
'validation' => array(__CLASS__, 'getDescriptionValidators'),
'title' => Loc::getMessage('ORDER_PROPS_ENTITY_DESCRIPTION_FIELD'),
),
'IS_EMAIL' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_PROFILE_NAME' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_PAYER' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_LOCATION4TAX' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_FILTERED' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'CODE' => array(
'data_type' => 'string',
'validation' => array(__CLASS__, 'getCodeValidators'),
'title' => Loc::getMessage('ORDER_PROPS_ENTITY_CODE_FIELD'),
),
'IS_ZIP' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_PHONE' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_ADDRESS' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_ADDRESS_FROM' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'IS_ADDRESS_TO' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'ACTIVE' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'UTIL' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'INPUT_FIELD_LOCATION' => array(
'data_type' => 'integer',
'format' => '/^[0-9]{1,11}$/',
),
'MULTIPLE' => array(
'data_type' => 'boolean',
'values' => array('N', 'Y'),
),
'SETTINGS' => array(
'data_type' => 'string',
'validation' => array(__CLASS__, 'getSettingsValidators'),
'save_data_modification' => array(__CLASS__, 'getSettingsSaveModifiers'),
'fetch_data_modification' => array(__CLASS__, 'getSettingsFetchModifiers'),
),
'GROUP' => array(
'data_type' => 'BitrixSaleInternalsOrderPropsGroupTable',
'reference' => array('=this.PROPS_GROUP_ID' => 'ref.ID'),
'join_type' => 'LEFT',
),
'PERSON_TYPE' => array(
'data_type' => 'BitrixSaleInternalsPersonTypeTable',
'reference' => array('=this.PERSON_TYPE_ID' => 'ref.ID'),
'join_type' => 'LEFT',
),
'ENTITY_REGISTRY_TYPE' => array(
'data_type' => 'string',
),
'XML_ID' => array(
'data_type' => 'string',
),
'ENTITY_TYPE' => array(
'data_type' => 'enum',
'default_value' => Registry::ENTITY_ORDER,
'required' => true,
'validation' => array(__CLASS__, 'validateEntityType'),
'values' => static::getEntityTypes()
),
);
}