static function getMap()
{
return array(
'ID' => new MainEntityIntegerField('ID', array(
'primary' => true,
'autocomplete' => true,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_ID_FIELD')
)),
'DISCOUNT_ID' => new MainEntityIntegerField('DISCOUNT_ID', array(
'required' => true,
'validation' => array(__CLASS__, 'validateDiscountId'),
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_DISCOUNT_ID_FIELD')
)),
'ACTIVE' => new MainEntityBooleanField('ACTIVE', array(
'values' => array('N', 'Y'),
'default_value' => 'Y',
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_ACTIVE_FIELD')
)),
'ACTIVE_FROM' => new MainEntityDatetimeField('ACTIVE_FROM', array(
'default_value' => null,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_ACTIVE_FROM_FIELD')
)),
'ACTIVE_TO' => new MainEntityDatetimeField('ACTIVE_TO', array(
'default_value' => null,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_ACTIVE_TO_FIELD')
)),
'COUPON' => new MainEntityStringField('COUPON', array(
'required' => true,
'validation' => array(__CLASS__, 'validateCoupon'),
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_COUPON_FIELD')
)),
'TYPE' => new MainEntityIntegerField('TYPE', array(
'validation' => array(__CLASS__, 'validateType'),
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_TYPE_FIELD')
)),
'MAX_USE' => new MainEntityIntegerField('MAX_USE', array(
'default_value' => 0,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_MAX_USE_FIELD')
)),
'USE_COUNT' => new MainEntityIntegerField('USE_COUNT', array(
'default_value' => 0,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_USE_COUNT_FIELD')
)),
'USER_ID' => new MainEntityIntegerField('USER_ID', array(
'default_value' => 0,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_USER_ID_FIELD')
)),
'DATE_APPLY' => new MainEntityDatetimeField('DATE_APPLY', array(
'default_value' => null,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_DATE_APPLY_FIELD')
)),
'TIMESTAMP_X' => new MainEntityDatetimeField('TIMESTAMP_X', array(
'default_value' => function(){ return new MainTypeDateTime(); },
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_TIMESTAMP_X_FIELD')
)),
'MODIFIED_BY' => new MainEntityIntegerField('MODIFIED_BY', array(
'default_value' => null,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_MODIFIED_BY_FIELD')
)),
'DATE_CREATE' => new MainEntityDatetimeField('DATE_CREATE', array(
'default_value' => function(){ return new MainTypeDateTime(); },
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_DATE_CREATE_FIELD')
)),
'CREATED_BY' => new MainEntityIntegerField('CREATED_BY', array(
'default_value' => null,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_CREATED_BY_FIELD')
)),
'DESCRIPTION' => new MainEntityTextField('DESCRIPTION', array(
'default_value' => null,
'title' => Loc::getMessage('DISCOUNT_COUPON_ENTITY_DESCRIPTION_FIELD')
)),
'CREATED_BY_USER' => new MainEntityReferenceField(
'CREATED_BY_USER',
'BitrixMainUser',
array('=this.CREATED_BY' => 'ref.ID'),
array('join_type' => 'LEFT')
),
'MODIFIED_BY_USER' => new MainEntityReferenceField(
'MODIFIED_BY_USER',
'BitrixMainUser',
array('=this.MODIFIED_BY' => 'ref.ID'),
array('join_type' => 'LEFT')
),
'DISCOUNT' => new MainEntityReferenceField(
'DISCOUNT',
'BitrixSaleInternalsDiscount',
array('=this.DISCOUNT_ID' => 'ref.ID'),
array('join_type' => 'LEFT')
)
);
}