OnGetDiscount
Описание и параметры
mixed функция-обработчик( int intProductID, int intIBlockID, array arCatalogGroups, array arUserGroups, string strRenewal, string siteID, array arDiscountCoupons, bool boolSKU, bool boolGetIDS );
OnGetDiscount - событие, вызываемое в методе CCatalogDiscount::GetDiscount. Позволяет заменить стандартный метод выбора скидок.
Параметры
Параметр | Описание |
---|---|
intProductID | Идентификатор товара. |
intIBlockID | Идентификатор инфоблока. |
arCatalogGroups | Массив идентификаторов типов цен, для которых необходимо вернуть скидки. Если значение параметра - отрока, то в обработчике события в этом случае необходимо привести строку к массиву: if (!is_array($arCatalogGroups)) $arCatalogGroups = array($arCatalogGroups); |
arUserGroups | Массив групп, к которым принадлежит пользователь. Если значение параметра - отрока, то в обработчике события в этом случае необходимо привести строку к массиву: if (!is_array($arCatalogGroups)) $arUserGroups = array($arCatalogGroups); |
strRenewal | Флаг "Продление подписки". |
siteID | Идентификатор сайта. |
arDiscountCoupons | Массив купонов, которые влияют на выборку скидок. Если задано значение false, то массив купонов будет взят из CCatalogDiscountCoupon::GetCoupons. Если будет передан пустой массив купонов, то купонные скидки учитываться не будут вообще. |
boolSKU | Определяет нужно ли выполнять проверку (true), что товар является торговым предложением, или проверку не проводить (false).
Если параметр принимает значение true и товар является торговым предложением, то выборка скидок будет сделана и для основного товара. |
boolGetIDS | Параметр определяет возвращать только идентификаторы скидок (true) или полную информацию по скидкам (false). |
Возвращаемое значение
В результате работы обработчика могут быть возвращены следующие значения:
- true - обработчик ничего не сделал, будет выполнена работа метода CCatalogDiscount::GetDiscount;
- false - возникла ошибка, работа метода прерывается;
- массив, где каждый элемент - это идентификатор скидки (если boolGetIDS равен true) или ассоциативный массив (boolGetIDS принимает значение false) с ключами:
- ID - код записи;
- TYPE - тип записи;
- SITE_ID - сайт;
- ACTIVE - флаг активности;
- ACTIVE_FROM - дата начала действия скидки;
- ACTIVE_TO - дата окончания действия скидки;
- RENEWAL - флаг "Скидка на продление";
- NAME - название скидки;
- SORT - индекс сортировки;
- MAX_DISCOUNT - максимальная величина скидки;
- VALUE_TYPE - тип скидки (P - в процентах, F - фиксированая величина);
- VALUE - величина скидки;
- CURRENCY - валюта;
- PRIORITY - приоритет применимости;
- LAST_DISCOUNT - флаг "Прекратить дальнейшее применение скидок";
- COUPON - код купона;
- COUPON_ONE_TIME - тип купона (Y - купон на 1 позицию заказа, O - купон на 1 заказ, N - многоразовый купон);
- COUPON_ACTIVE - флаг активности купона;
- UNPACK - строка фильтра, который проверяет попадание товара под скидку.
Сообщение не промодерировано, возможны ошибки и неточности.
|
Событие почему-то не работает в корзине
|
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.