~1 минуту, Опубликовано 11.03.2024

Как при самовывозе задать местоположение по умолчанию в saleOrderAjax

Как при самовывозе задать местоположение по умолчанию в saleOrderAjax

Пример кода для того, чтобы при отправке формы оформления заказа задать значение по умолчанию для Местоположения, если способ доставки – Самовывоз.

В нашем примере ID службы доставки Самовывоз – 3.
ID свойства с местоположение (code=LOCATION) – 6.
0000074022 – местоположение по умолчанию для самовывоза

<?php

use \Bitrix\Main\EventManager,
    \Bitrix\Main\Event;

\Bitrix\Main\Loader::includeModule('iblock');

$eventManagerInstance = EventManager::getInstance();

$eventManagerInstance->addEventHandler(
    "sale",
    "OnSaleComponentOrderProperties",
    [
        "Handlers",
        "OnSaleComponentOrderProperties"
    ]
);

class Handlers
{
    public static function OnSaleComponentOrderProperties(&$arUserResult, $request, &$arParams, &$arResult)
    {
        if($arUserResult['DELIVERY_ID'] == 3 && (empty($arUserResult['ORDER_PROP'][6]) || is_null($arUserResult['ORDER_PROP'][6]))){
            $arUserResult['ORDER_PROP'][6] = '0000074022';
        }
    }    
}

 

Читайте также  Делаем сложный фильтр для новостей при помощи Bitrix D7

Категории: Bitrix Bitrix D7