Не знаю что не работает. Дэлит апдейт точно не отменяет.
Но ваш код я бы написал по другому немношк
| Код |
|---|
function OnBeforeIBlockElementDeleteHandler($ID)
{
$result = true;
$arFilter = Array("IBLOCK_ID"=> IBLOCK_CAT_ID, "ID"=> $ID, ">SHOW_COUNTER" => 1);
$res = CIBlockElement::GetList(array(), $arFilter, false, false, array('ID', 'ACTIVE', 'SHOW_COUNTER'));
if ($e = $res->Fetch())
{
if ($e['ACTIVE'] == 'Y')
{
$eObj = new CIBlockElement();
$r = $eObj->Update($e['ID'], array('ACTIVE' => 'N'));
}
global $APPLICATION;
$APPLICATION->throwException("Товар не был удален так, как количество его просмотров = " . $e["SHOW_COUNTER"]);
$result = false;
}
return $result;
}
|