116 'autocomplete' =>
true,
117 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_ID_FIELD')
120 'validation' =>
array(__CLASS__,
'validateXmlId'),
121 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_XML_ID_FIELD')
125 'validation' =>
array(__CLASS__,
'validateSiteId'),
126 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_SITE_ID_FIELD')
130 'default_value' => self::TYPE_DISCOUNT,
131 'validation' =>
array(__CLASS__,
'validateType'),
132 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_TYPE_FIELD')
135 'values' =>
array(
'N',
'Y'),
136 'default_value' =>
'Y',
137 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_ACTIVE_FIELD')
140 'default_value' =>
null,
141 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_ACTIVE_FROM_FIELD')
144 'default_value' =>
null,
145 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_ACTIVE_TO_FIELD')
148 'values' =>
array(
'N',
'Y'),
149 'default_value' =>
'N',
150 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_RENEWAL_FIELD')
154 'validation' =>
array(__CLASS__,
'validateName'),
155 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_NAME_FIELD')
158 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_SORT_FIELD')
161 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_MAX_DISCOUNT_FIELD')
165 'values' =>
array(self::VALUE_TYPE_PERCENT, self::VALUE_TYPE_FIX, self::VALUE_TYPE_SALE),
166 'default_value' => self::VALUE_TYPE_PERCENT,
167 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_VALUE_TYPE_FIELD')
171 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_VALUE_FIELD')
175 'validation' =>
array(__CLASS__,
'validateCurrency'),
176 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_CURRENCY_FIELD')
180 'default_value' =>
function()
184 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_TIMESTAMP_X_FIELD')
186 'COUNT_PERIOD' =>
new Main\Entity\EnumField(
'COUNT_PERIOD',
array(
187 'values' =>
array(self::COUNT_PERIOD_TYPE_ALL, self::COUNT_PERIOD_TYPE_INTERVAL, self::COUNT_PERIOD_TYPE_PERIOD),
188 'default_value' => self::COUNT_PERIOD_TYPE_ALL
190 'COUNT_SIZE' =>
new Main\Entity\IntegerField(
'COUNT_SIZE',
array(
193 'COUNT_TYPE' =>
new Main\Entity\EnumField(
'COUNT_TYPE',
array(
194 'values' =>
array(self::COUNT_TYPE_SIZE_DAY, self::COUNT_TYPE_SIZE_MONTH, self::COUNT_TYPE_SIZE_YEAR),
195 'default_value' => self::COUNT_TYPE_SIZE_YEAR
197 'COUNT_FROM' =>
new Main\Entity\DatetimeField(
'COUNT_FROM',
array(
198 'default_value' =>
null
200 'COUNT_TO' =>
new Main\Entity\DatetimeField(
'COUNT_TO',
array(
201 'default_value' =>
null
203 'ACTION_SIZE' =>
new Main\Entity\IntegerField(
'ACTION_SIZE',
array(
206 'ACTION_TYPE' =>
new Main\Entity\EnumField(
'ACTION_TYPE',
array(
207 'values' =>
array(self::ACTION_TYPE_SIZE_DAY, self::ACTION_TYPE_SIZE_MONTH, self::ACTION_TYPE_SIZE_YEAR),
208 'default_value' => self::ACTION_TYPE_SIZE_YEAR
210 'MODIFIED_BY' =>
new Main\Entity\IntegerField(
'MODIFIED_BY',
array(
211 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_MODIFIED_BY_FIELD')
213 'DATE_CREATE' =>
new Main\Entity\DatetimeField(
'DATE_CREATE',
array(
214 'default_value' =>
null,
215 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_DATE_CREATE_FIELD')
217 'CREATED_BY' =>
new Main\Entity\IntegerField(
'CREATED_BY',
array(
218 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_CREATED_BY_FIELD')
220 'PRIORITY' =>
new Main\Entity\IntegerField(
'PRIORITY',
array(
221 'default_value' => 1,
222 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_PRIORITY_FIELD')
224 'LAST_DISCOUNT' =>
new Main\Entity\BooleanField(
'LAST_DISCOUNT',
array(
225 'values' =>
array(
'N',
'Y'),
226 'default_value' =>
'Y',
227 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_LAST_DISCOUNT_FIELD')
229 'VERSION' =>
new Main\Entity\EnumField(
'VERSION',
array(
230 'values' =>
array(self::OLD_VERSION, self::ACTUAL_VERSION),
231 'default_value' => self::ACTUAL_VERSION
233 'NOTES' =>
new Main\Entity\StringField(
'NOTES',
array(
234 'validation' =>
array(__CLASS__,
'validateNotes'),
235 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_NOTES_FIELD')
237 'CONDITIONS' =>
new Main\Entity\TextField(
'CONDITIONS',
array()),
238 'CONDITIONS_LIST' =>
new Main\Entity\TextField(
'CONDITIONS_LIST',
array(
239 'serialized' =>
true,
240 'column_name' =>
'CONDITIONS',
241 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_CONDITIONS_LIST_FIELD')
243 'UNPACK' =>
new Main\Entity\TextField(
'UNPACK',
array()),
244 'USE_COUPONS' =>
new Main\Entity\BooleanField(
'USE_COUPONS',
array(
245 'values' =>
array(
'N',
'Y'),
246 'default_value' =>
'N',
247 'title' => Loc::getMessage(
'DISCOUNT_ENTITY_USE_COUPONS_FIELD')
249 'SALE_ID' =>
new Main\Entity\IntegerField(
'SALE_ID'),
250 'CREATED_BY_USER' =>
new Main\Entity\ReferenceField(
253 array(
'=this.CREATED_BY' =>
'ref.ID')
255 'MODIFIED_BY_USER' =>
new Main\Entity\ReferenceField(
258 array(
'=this.MODIFIED_BY' =>
'ref.ID')
260 'SALE_DISCOUNT' =>
new Main\Entity\ReferenceField(
262 'Bitrix\Sale\Internals\DiscountTable',
263 array(
'=this.SALE_ID' =>
'ref.ID')