Доброго времени суток. Уже голову сломал. Подскажите в чем ошибка плиз
При удалении через админку какого-либо элемента этого инфоблока не срабатывает событие..логика точно работает я менял событие на OnBeforeIBlockElementUpdate и всё нормально работало при изменении элемента. Никак не пойму что не так..
Код |
---|
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate", Array("CIBLockElementDeleteHandler", "OnBeforeIBlockElementDeleteHandler")); class CIBLockElementDeleteHandler{ function OnBeforeIBlockElementDeleteHandler($arFields){ if($arFields['IBLOCK_ID'] == 2){ $arSort=false; $arFilter=array( "IBLOCK_ID"=>$arFields["IBLOCK_ID"], "ACTIVE"=>"Y", "ID"=>$arFields["ID"], ); $arGroupBy = false; $arNavStartParams = array("nTopCount"=>50); $arSelect=array("ID","NAME","SHOW_COUNTER"); $BDRes=CIBlockElement::GetList( $arSort, $arFilter, $arGroupBy, $arNavStartParams, $arSelect ); $arRes=$BDRes->Fetch(); if($arRes["SHOW_COUNTER"]>1){ global $APPLICATION; $APPLICATION->throwException('Нельзя удалять. Количество просмотров - ' . $arRes["SHOW_COUNTER"]); return false; } } } } |
При удалении через админку какого-либо элемента этого инфоблока не срабатывает событие..логика точно работает я менял событие на OnBeforeIBlockElementUpdate и всё нормально работало при изменении элемента. Никак не пойму что не так..