Спасибо, исправил все заработало.А почему тогда на тестовой страничке код работал? там кроме этого кода было только подключение футера и хедера.
еще можно один вопрос, что бы новую тему не создавать,думаю он чем то похож.
В обработчике событий написан код
| Код |
|---|
function OnBeforeIBlockElementDeleteHandler($ID)
{
if(CModule::IncludeModule("iblock")){
$arSelect = Array("ID", "SHOW_COUNTER", "ACTIVE", "SHOW_COUNTER");
$arFilter = Array("IBLOCK_ID"=> IBLOCK_CAT_ID, "ID"=> $ID);
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>150), $arSelect);
while($ob = $res->GetNextElement())
{
$arFields = $ob->GetFields();
dump($arFields);
}
}
if( $arFields["SHOW_COUNTER"] > 1 ) {
$el = new CIBlockElement;
$arLoadProductArray = Array(
"ACTIVE" => "N"
);
$res = $el->Update($ID, $arLoadProductArray);
global $APPLICATION;
$APPLICATION->throwException("Товар не был удален так, как количество его просмотров =".$arFields["SHOW_COUNTER"]);
return false;
}
}
|
| Цитата |
|---|
| Для отмены удаления элемента и прекращении выполнения метода CIBlockElement::Delete необходимо в функции-обработчике создать исключение методом $APPLICATION->ThrowException() и вернуть false |
исключение отменяет и работу метода Update?
почему то, так же как и в примере выше, на тестовой страничке метод Update работает, а когда в обработчик вставляю то нет.