Битрикс. отвалился обработчик
Всем привет. В битриксе в карточке товара заведено свойство, при активности которого у товара обнулялись остатки и он переходил в статус (нет в наличии). После какого-то обновления (достоверно неизвесно кокого) этот обработчик отвалился. в init.php нашел такой кусок кода. Помагите разобраться что случилось.
AddEventHandler("catalog", "OnBeforeProductAdd", "OnBeforeProductAddUpdateHandler");
AddEventHandler("catalog", "OnBeforeProductUpdate", "OnBeforeProductAddUpdateHandler");
function OnBeforeProductAddUpdateHandler(&$arFields) { $ID = $arFields['ID'];
//Обнуляем остатки и запрещаем продавать в минус при активном свойстве "Снят с продажи"
if (CModule::IncludeModule("iblock")) {
$rsElement = CIBlockElement::GetByID($ID);
if ($obElement = $rsElement->GetNextElement()) {
$arElement = $obElement->GetFields();
$arElement["PROPERTIES"] = $obElement->GetProperties();
if (intval($arElement["IBLOCK_ID"]) === 30) {
if (!empty($arElement["PROPERTIES"]["NOT_FOR_SALE"]["VALUE"])) {
$arFields["QUANTITY"] = 0;
$arFields["CAN_BUY_ZERO"] = "N";
} else {
$arFields["CAN_BUY_ZERO"] = "D";
}
}
}
}
}