Здравствуйте.
Пытаюсь при изменении элемента сделать так, чтобы он автоматически привязывался дополнительно к еще одному разделу.
Не могу понять, в чем ошибка, подскажите, пожалуйста:
AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array("AddToSection", "OnAfterIBlockElementUpdateHandler"));
class AddToSection
{
public static $disableHandler = false;
function OnAfterIBlockElementUpdateHandler(&$arFields)
{
if (self::$disableHandler)
return;
CModule::IncludeModule("iblock");
if( $arFields["ID"] > 0 && $arFields["IBLOCK_ID"] == "21")
{
$el = new CIBlockElement;
$arSections = array();
if(in_array("104", $arFields["IBLOCK_SECTION"], true))
{
file_put_contents("/home/bitrix/www/bitrix/php_interface/log.txt", "Товар уже находится в папке 104");
}
else
{
$arSections = array_push($arFields["IBLOCK_SECTION"], "104");
$arLoadProductArray = Array(
"IBLOCK_SECTION" => $arSections,
);
self::$disableHandler = true;
$res = $el->Update($arFields["ID"], $arLoadProductArray);
}
}
}
}
Привязка к какому-либо разделу вообще пропадает в этом случае. И почему-то в $arSections выводится не массив разделов, а цифра 2...